Дизайн интерфейса дизайнера документов - PullRequest
0 голосов
/ 28 октября 2011

Я работаю над кодированием WYSIWYG дизайнера документов.Основная цель этого дизайнера - уметь читать (загружать) и создавать несколько документов, написанных на разных языках шаблонов (ZPL, XSL-FO и т. Д.).Теперь, ради создания WYSIWYG-дизайнера, я планирую создать элегантный пользовательский интерфейс, с которым пользователь может поиграть для создания / редактирования документа.
Обязательным требованием пользовательского интерфейса является то, что -

  1. Пользовательский интерфейс должен быть таким, чтобы пользователь мог иметь возможность выбирать или выбирать элементы и иметь возможность отбрасывать их в пользовательском интерфейсе.После отбрасывания положение элементов должно позволять изменять положение.
  2. Пользовательский интерфейс должен связывать пространственное расположение элементов с метаданными элемента (скажем, координата x, координата y, высота, ширина и т. Д.).
  3. Пользовательский интерфейс должен иметь возможность беспрепятственной передачи элементов и их пространственных положений в модуль бэкэнда, написанный на Java, который будет редактировать или создавать документ на указанном языке шаблонов.

У меня проблемы с решением, для чего реализовывать пользовательский интерфейс. Я попробовал Swing и обнаружил, что он не очень хорош (довольно жесток для моих нужд).Любые предложения относительно того, что может быть использовано для создания описанного выше пользовательского интерфейса, будут очень полезны.

Ответы [ 2 ]

1 голос
/ 29 октября 2011

Возможно, вам будет лучше обслуживать какую-либо платформу с расширенными возможностями (RCP), например Eclipse или NetBeans.Оба, вероятно, лучше всего известны как IDE, но IDE фактически построены на соответствующих платформах.Использование RCP избавит вас от ответственности.Существующие плагины / модули могут быть созданы для взаимодействия с вашим кодом, и учитываются такие возможности, как перспективы (Eclipse) или перестановка панелей.

Как намекал Дэйв Ньютон, JavaFX также может быть кандидатом.JavaFX 2.0 уже выпущен и больше не требует языка сценариев, используемого в 1.0, вместо этого он выбрал Java API, который будет более естественным для опытных разработчиков Java.И это может быть использовано в Swing.

1 голос
/ 29 октября 2011

Ваши варианты лежат в основе Swing или SWT.

Не уверен, что вы подразумеваете под "жестким";Swing является довольно хорошей архитектурой GUI, хотя некоторые предпочитают SWT.Не уверен, как закончится JavaFX, но у него есть несколько приятных особенностей.

XUI слоев сверху.Или воспользуйтесь подходом Griffon , хотя я не уверен, что он идеально подходит для приложения, над которым вы работаете.Или используйте Groovy / JRuby / etc.сделать много аспектов работы с Swing / и т. д.менее болезненный.

IIRC есть также привязки Java для QT, если лицензирование QT работает для вас.

...