I recently released
Drombler FX v0.3.
Drombler FX is
a modular Rich Client Platform for JavaFX based on OSGi and Maven (POM-first).
With this release the
Docking Framework and the
Context Framework have been moved from the OSGi-based RCP
Drombler FX to the
Drombler Commons library collection, which can be used inside and outside of an OSGi platform.
This allows you to use these frameworks even if you don't want to use
Drombler FX, yet, for some reason.
Note that the declarative, annotation based programming model is still only supported by
Drombler FX. But using the libraries from
Drombler Commons you can use the
Docking Framework programmatically like this:
Add a
DockingPane to the scene and initialize the
ContextManager and the
DockingManager.
The
DockingPane splits up its content area into any number of
Docking Areas. The
Docking Areas can be resized using the dividers. Each
Docking Area can hold any number of
Dockable Panes, which are layed out as Tabs.
The ContextManager and the DockingManager manage the
Acitve Context and the
Application Context depending on the currently open and active
Dockable Panes.
Register a
Docking Area:
Initialize the
DockablePreferencesManager and register the default
DockablePreferences for each
Dockable Pane type (here:
LeftTestPane which should be docked into the
Docking Area with ID
"left"):
Add a
DockablePane (here:
LeftTestPane) to the
DockingPane:
You can find a complete sample
here.
Note that the
Docking Framework is still in its early stages and advanced features such as drag'n'drop
Dockable Panes don't work yet. Currently it supports:
- Register Docking Areas and visualize them by adding TabPanes to a custom multi-SplitPane.
- Add Dockable Panes to Docking Areas using a logical Docking Area ID.
- Calculate the minimal required SplitPanes depending on the sparse definition of Docking Areas and the currently open Dockable Panes.
Here you can find a list of currently known issues and enhancement requests.
Especially have a look at the
API issues. Although I took the opportunity and invested a lot of effort to clean up the API in the process of moving the framework from
Dromber FX, where the programmatic API was in a hidden package, to
Drombler Commons, where a part of the programmatic API has now been published, I'm still not 100% satisfied with the current state. Other opinions are highly welcome!
Please feel free to vote, comment and/ or file new issues.
For more information on the
Context Framework have a look at the
wiki.
And you can find a complete sample
here.
The following table provides you an overview of the different
Drombler components, links to the modules, which are available from Maven Central, and links to the Javadocs.
Name |
Modules |
Javadoc |
Description |
Drombler FX |
Modules |
Javadoc |
Drombler FX is a modular Rich Client Platform for JavaFX based on:
|
Drombler ACP |
Modules |
Javadoc |
Drombler Abstract Client Platform (ACP) is an abstract, GUI-toolkit agnostic, modular Rich Client Platform based on:
|
Drombler Commons |
Modules |
Javadoc |
Drombler Commons is a collection of reusable libraries and frameworks. They ship with OSGi meta data but don't require an OSGi environment. |
You can find the complete list of fixed issues here:
http://issues.drombler.org/milestone/0.3
Note that since JavaFX 8 isn't 100% backwards compatible with JavaFX 2.x, this release still only works with Java SE 7/ JavaFX 2.x.
I'm already working on
upgrading Drombler FX and
Drombler Commons to Java SE 8/ JavaFX 8, however, and it will likely make it into the
next release. Stay tuned!