Closed meltzow closed 3 days ago
The current JavaFX efforts by the RPTools dev team have been by Jamz in TokenTool v2.x. He has also done a proof-of-concept implementation of the map window in MT that allowed for a video background.
The goal is to move all of MapTool's interface to JavaFX components.
Yes, we do plan to move everything to JFX eventually. Modal dialogs are probably the easiest place to drop-in some JFX code, as they are self-contained.
One thing that I'd like to find is a well-designed and extensible wizard-style framework for JFX. I played around a bit but the approaches I've seen (like in the ControlsFX library) are not very object-oriented, with each panel needing to know too much information about the other panels if they're going to share data. My test of this was a new Start a Server dialog that asked different questions at each step and attempted to verify the information between panels. But I found that sharing the data gathered so far, along with the state the dialog was in, to be pretty clunky. However, that was a long time ago.
I would love to see someone tackle a wizard-style dialog in JFX that is based primarily on interfaces, so that panels can be easily replaced or reordered. For anyone interested in tackling this, I have some overall ideas but nothing JFX-specific.
Yep, there are a few approaches. A FX app can have swing components and a swing app can have FX components.
One approach would be to replace a few components/frames with newer existing FX components. Some things would get a really nice big bang out of this, like replacing the 'frames' macros create using webview so you can now have HTML5/CSS3 content. The downside is this could end up getting messy and end up with some really patch/never completed parts.
Another approach is to convert to a FX app and include current Jcomponents into the FX app, converting components as we can. The downside here is there isn't a really good/solid/supported FX "docking" framework, so we either have to 1. Ditch docking and move onto another UI design or 2. adopt 1 of the current docking frameworks and we may not know about a major roadblock using it until further down the road.
The last approach is to bite the bullet and covert most of the app now in one shot to FX (leaving the zoneRenderer panel, eg the map, as a phase 2). I'm leaning towards this approach after redoing TokenTool. MapTool UI relies so heavy on JIDE that replacing parts of it is painful. And ripping the bandaid off and just doing it sometimes is just the better way. It will let us rip out huge chunks of code we already don't like.
At this point I was leaning on waiting for JDK 11 and go Open JDK, as 11 removes FX from the core and into it's own lib. That is happening this fall which seems like a good place to start.
At least, that's my 2 copper pieces.
Jamz has created an FX branch for the move to JavaFX.
@Phergus is there more to this that would cause it to remain open?
Nope. It was never an active issue.
hi all,
are they any JavaFX Migrations for mapTool currently? if yes, please led me know.
I got a first milestone for this: a migration is softly. mapTool can display javaFX component in the current swing application. Here you can see at the top right edge a component named "CHAT_FX". This is the example JavaFX component.
here is my new fork: https://github.com/meltzow/maptool the JavaFX component reads the following file: https://github.com/meltzow/maptool/blob/master/maptool/src/main/resources/net/rptools/maptool/view/Chat.fxml
are there any guys/girls who can realize the fxml-files for all current existing components with SceneBuilder? see here: https://github.com/RPTools/maptool/blob/master/doc/How_To_Setup_UI_Tools.md I am not a UI designer but i am able to integrate these in mapTool.
a fxml based SplashScreen example was copied from https://github.com/RPTools/tokentool/tree/master/src/main/resources/net/rptools/tokentool/view
Is there anybody out there, who want to help?