gluonhq / scenebuilder

Scene Builder is a visual, drag 'n' drop, layout tool for designing JavaFX application user interfaces.
https://gluonhq.com/products/scene-builder/
Other
732 stars 218 forks source link

Workspaces #14

Open gluon-bot opened 9 years ago

gluon-bot commented 9 years ago

Originally reported by: Alexander Casall (Bitbucket: acasall, GitHub: Unknown)


I often have to do the same steps for multiple FXML files in one project. This steps should be saved in a workspace and should by applied to all FXML files of the workspace

For:


gluon-bot commented 8 years ago

Original comment by Michael Paus (Bitbucket: mipastgt, GitHub: mipastgt):


Here 57 is another issue which could make use of such a workspace feature.

gluon-bot commented 8 years ago

Original comment by Luca Domenichini (Bitbucket: mimmoz81, GitHub: mimmoz81):


Following from #34, I would add that in workspace it could be useful to set the "classpath" from which SB loads custom components (both jars and directories), similar to that other tools already do (e.g. iReport)

gluon-bot commented 9 years ago

Original comment by Alexander Casall (Bitbucket: acasall, GitHub: Unknown):


From Saxonia Systems AG

luca-domenichini commented 5 years ago

I think PR #236 addresses some of the points in this issue. Please share your thoughts about (unfortunately seems that alexander casall is not a github user..)

Oliver-Loeffler commented 3 years ago

Okay, let's revive this issue here.

Concept Questions:

Shall Scene Builder offer workspaces as an option parallel to the current mode of operation (working with single, isolated files, having a shared libs folder)?

What is needed to develop the concept of workspaces in Scene Builder?

What is expected from a Scene Builder workspace?

Inspirations

daniel-shuy commented 3 years ago

For this purpose, I've resorted to use Intellij IDEA's embedded JavaFX Scene Builder, which treats the project as a workspace. Maybe the standalone Scene Builder application can use that as a reference/inspiration?

Oliver-Loeffler commented 3 years ago

Thanks for the hint, yes, very good idea to use this as inspiration. I never used the embedded version so didn't know about this feature.

abhinayagarwal commented 2 years ago

Scene Builder workspace is obviously a good idea but we need to have enough use-cases before we move forward with it.

Scene Builder can be used across multiple JavaFX projects which can have their own set of custom controls. Apart from custom controls, is their anything else which we would like to isolate in Scene Builder?

One thing that comes to my mind is the JavaFX version used to create the FXML namespace. For example, if you use Scene Builder 16 to create FXML. it will contain the following entry in the xlmns tag:

xmlns="http://javafx.com/javafx/16

This FXML when used in a project running with JavaFX 11 will throw:

WARNING: Loading FXML document with JavaFX API of version 16 by JavaFX runtime of version 11

This is because there is a check in FXMLLoader which throws the warning if the major version of JavaFX doesn't match FXML namespace version.

Instead of blindly creating FXML using the JavaFX bundled version, Scene Builder could creates FXMLs with different JavaFX namespace. This version can have a one to one relationship with the JavaFX version used in the project.

Oliver-Loeffler commented 2 years ago

The namespace preference is a very good idea, this is indeed something which is missing. Is it currently only the namespace element or does FXML indeed provide already different elements/attributes as per JavaFX version?

@abhinayagarwal This feels like enhancing the FXOM so, that we can once create JavaFX version specific FXML.