Open burningrain opened 8 years ago
http://paulonjava.blogspot.ru/2014/11/making-javafx-better-with-osgi.html
@Component public class A implements ToolbarButton{}
Node getNode() забирает и цепляет куда надо
За основу стиля модулей UI можно взять концепт Material design - https://material.google.com/ Пример:
exclipse ругался на импорты FX - нашел такой пакет утилит: http://www.eclipse.org/efxclipse/install.html#for-the-lazy Поставил по url: http://download.eclipse.org/efxclipse/updates-released/2.4.0/site в пункте install new software в эклипс IDE Успешно заипортил fx jdk 8 101
Обнаружил на просторах гитхаба проект по Material design для JavaFx https://github.com/jfoenixadmin/JFoenix Демка очень даже впечатляет.
Для отображения состояния UI плагином требуется добавить Value Object в котором перечислена мета-информация и срез состояния ядра. UI плагин будет получать Value Object по средствам event-ов, а доступ к классу будет через osgi import пакета. Планируемое место размещения VO в game-core-api. (Из обсуждения и бумажных заметок)
Необходимо сделать каркасный модуль для ui-plugin. Данный модуль является "скелетом, на который будет наращиваться мясо", а именно: модуль содержит логику по отрисовке основных панелек/менюшек/тулбара и добавлению/удалению компонентов на них из ui-plugin-ов. Как предполагается писать класс ui-plugin-а: 1) Имплементируем какой-то интерфейс (н-р, IMenu или IToolbar) 2) Ставим osgi-аннотацию @Component 3) Имплементируем в данном классе логику по обработке действий Разумеется, один ui-plugin может поставлять множество таких классов.
В связи с этим и требуется некий каркас, в ячейки которого декларативно через интерфейсы и аннотации и будут встраиваться ui-plugin-ы. Необходимо разработать как сам game-ui, так и ui-plugin-api