burningrain / planetBot

The Unlicense
2 stars 2 forks source link

game-ui and ui-plugin-api #8

Open burningrain opened 8 years ago

burningrain commented 8 years ago

Необходимо сделать каркасный модуль для ui-plugin. Данный модуль является "скелетом, на который будет наращиваться мясо", а именно: модуль содержит логику по отрисовке основных панелек/менюшек/тулбара и добавлению/удалению компонентов на них из ui-plugin-ов. Как предполагается писать класс ui-plugin-а: 1) Имплементируем какой-то интерфейс (н-р, IMenu или IToolbar) 2) Ставим osgi-аннотацию @Component 3) Имплементируем в данном классе логику по обработке действий Разумеется, один ui-plugin может поставлять множество таких классов.

В связи с этим и требуется некий каркас, в ячейки которого декларативно через интерфейсы и аннотации и будут встраиваться ui-plugin-ы. Необходимо разработать как сам game-ui, так и ui-plugin-api

mrzo0m commented 8 years ago

http://paulonjava.blogspot.ru/2014/11/making-javafx-better-with-osgi.html

@Component public class A implements ToolbarButton{}

Node getNode() забирает и цепляет куда надо

mrzo0m commented 8 years ago

За основу стиля модулей UI можно взять концепт Material design - https://material.google.com/ Пример: Material design

mrzo0m commented 8 years ago

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

mrzo0m commented 8 years ago

Обнаружил на просторах гитхаба проект по Material design для JavaFx https://github.com/jfoenixadmin/JFoenix Демка очень даже впечатляет.

mrzo0m commented 7 years ago

Для отображения состояния UI плагином требуется добавить Value Object в котором перечислена мета-информация и срез состояния ядра. UI плагин будет получать Value Object по средствам event-ов, а доступ к классу будет через osgi import пакета. Планируемое место размещения VO в game-core-api. (Из обсуждения и бумажных заметок)