Discussion:
SceneBuilder 2.0 import custom components from Jar
Christian
2014-06-08 08:24:36 UTC
Permalink
Hi,
I was trying to import controlsfx-5.0.6 and controlsfx-5.0.6_20 into
scenebuilder.
However only some or few controls could be imported.
When using these controls strange effects happen.
I was looking into the user guide in order to determine the requirements
that have to be met by the components in the jar file.
However there was just a simple guideline about how to import and not
how to develop custom components so that they match the scenebuilder.
I further turned the logging level of the scenbuilder to finest and
hoped to see at least some stacktraces that might give me a hint.
But I only saw stacktraces when using the imported components (mainly
belonging to missing resources because of classpath problems) nothing
from the import/jarfile-scan itself.
I was hoping that I can adjust the controlsfx classes so that they work
fine with the scenebuilder.
Any hints are more then welcome!

ps.:
It seems that scenebuilder is closed source, or is the some source out
there I could start with?
Is there an early access release for 8u20?

Thanks,
Christian
Jonathan Giles
2014-06-08 20:56:56 UTC
Permalink
Christian,

With my OpenJFX hat on:
=======================
ControlsFX-related issues are best discussed on the controlsfx-dev
mailing list, which can be accessed (and signed up to) here:
http://groups.controlsfx.org

Scene Builder is open source - you can access it by cloning the OpenJFX
rt repo, and you'll find the Scene Builder source code in apps/scenebuilder.


With my ControlsFX hat on:
=======================
Regarding getting ControlsFX to play nicer with Scene Builder - that is
really a matter for the ControlsFX project to resolve. ControlsFX needs
to follow the requirements of Scene Builder and FXML, and I'm not 100%
clear on what the definitive list of requirements is, but I know some of
the requirements include having a public no-args constructor, and using
@NamedArg on constructor parameters to define the parameter name. I have
been hoping someone from the community would step up to make ControlsFX
more FXML and Scene Builder compliant. If you're interested please ping
me off-list.

Relatedly, I recently asked if the Scene Builder team if someone could
take a quick look at ControlsFX to cast their expert eyes over the API
and let me know what is and isn't going to work well for them.

Thanks,

-- Jonathan
Post by Christian
Hi,
I was trying to import controlsfx-5.0.6 and controlsfx-5.0.6_20 into
scenebuilder.
However only some or few controls could be imported.
When using these controls strange effects happen.
I was looking into the user guide in order to determine the
requirements that have to be met by the components in the jar file.
However there was just a simple guideline about how to import and not
how to develop custom components so that they match the scenebuilder.
I further turned the logging level of the scenbuilder to finest and
hoped to see at least some stacktraces that might give me a hint.
But I only saw stacktraces when using the imported components (mainly
belonging to missing resources because of classpath problems) nothing
from the import/jarfile-scan itself.
I was hoping that I can adjust the controlsfx classes so that they
work fine with the scenebuilder.
Any hints are more then welcome!
It seems that scenebuilder is closed source, or is the some source out
there I could start with?
Is there an early access release for 8u20?
Thanks,
Christian
Eric Le Ponner
2014-06-10 08:52:58 UTC
Permalink
@Christian,

JAR import command of Scene Builder 2.0 collects all the classes found
in the JAR file and retains only the one that
1) can be instantiated using FXMLLoader
2) extends javafx.scene.Node.

In practice, for each class a.b.C, it generates the following FXML:
<?import a.b.C?><C/>
and passes it to FXMLLoader.load(). Then it checks instanceof Node on
the resulting object.

See JarExplorer.exploreEntry() method in Scene Builder sources for more details.


@Jonathan
We’ve acknowledged your request and will have a look to ControlsFX.


Eric
Post by Jonathan Giles
Christian,
=======================
ControlsFX-related issues are best discussed on the controlsfx-dev mailing list, which can be accessed (and signed up to) here: http://groups.controlsfx.org
Scene Builder is open source - you can access it by cloning the OpenJFX rt repo, and you'll find the Scene Builder source code in apps/scenebuilder.
=======================
Relatedly, I recently asked if the Scene Builder team if someone could take a quick look at ControlsFX to cast their expert eyes over the API and let me know what is and isn't going to work well for them.
Thanks,
-- Jonathan
Hi,
I was trying to import controlsfx-5.0.6 and controlsfx-5.0.6_20 into scenebuilder.
However only some or few controls could be imported.
When using these controls strange effects happen.
I was looking into the user guide in order to determine the requirements that have to be met by the components in the jar file.
However there was just a simple guideline about how to import and not how to develop custom components so that they match the scenebuilder.
I further turned the logging level of the scenbuilder to finest and hoped to see at least some stacktraces that might give me a hint.
But I only saw stacktraces when using the imported components (mainly belonging to missing resources because of classpath problems) nothing from the import/jarfile-scan itself.
I was hoping that I can adjust the controlsfx classes so that they work fine with the scenebuilder.
Any hints are more then welcome!
It seems that scenebuilder is closed source, or is the some source out there I could start with?
Is there an early access release for 8u20?
Thanks,
Christian
Loading...