hg: openjfx/8u-dev/rt: RT-38458 [Charts, Axis] TickMark's textVisible property is ignored
Changeset: 522fe51196c8 Author:Martin Sladecek martin.slade...@oracle.com Date: 2014-09-12 09:20 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/522fe51196c8 RT-38458 [Charts, Axis] TickMark's textVisible property is ignored follow-up fix Reviewed by: jgiles, kcr ! modules/controls/src/main/java/javafx/scene/chart/Axis.java
hg: openjfx/8u-dev/rt: RT-38582 [Transform] transform(Bounds) and inverseTransform(Bounds) produce incorrect results
Changeset: 726b5622b633 Author:Martin Sladecek martin.slade...@oracle.com Date: 2014-09-12 09:34 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/726b5622b633 RT-38582 [Transform] transform(Bounds) and inverseTransform(Bounds) produce incorrect results Reviewed by: kcr, flar + modules/graphics/src/main/java/com/sun/javafx/geometry/BoundsUtils.java ! modules/graphics/src/main/java/javafx/scene/Node.java ! modules/graphics/src/main/java/javafx/scene/transform/Transform.java ! modules/graphics/src/test/java/javafx/scene/transform/TransformOperationsTest.java
hg: openjfx/8u-dev/rt: [SCENEBUILDER] Fix DTL-6855 : Add ButtonBar component to the Library
Changeset: 7f169b1de6c6 Author:slions Date: 2014-09-12 09:59 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/7f169b1de6c6 [SCENEBUILDER] Fix DTL-6855 : Add ButtonBar component to the Library ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/library/BuiltinLibrary.java + apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/library/builtin/ButtonBar.fxml ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/metadata/klass/ComponentClassMetadata.java
hg: openjfx/8u-dev/rt: [SCENEBUILDER] Fix wrap in ScrollPane : as multiple selection is no more allowed for the Wrap In ScrollPane command (see DTL-6856),
Changeset: 1a0fe3d68229 Author:slions Date: 2014-09-12 11:04 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/1a0fe3d68229 [SCENEBUILDER] Fix wrap in ScrollPane : as multiple selection is no more allowed for the Wrap In ScrollPane command (see DTL-6856), there is no more need to set the pref view port height and width. ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/wrap/WrapInScrollPaneJob.java
hg: openjfx/8u-dev/rt: [SCENEBUILDER] Moved content of EditorController.performAddContextMenu() into AddContextMenuToSelectionJob class.
Changeset: 787b2e2d5c86 Author:Eric Le Ponner eric.le.pon...@oracle.com Date: 2014-09-12 11:15 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/787b2e2d5c86 [SCENEBUILDER] Moved content of EditorController.performAddContextMenu() into AddContextMenuToSelectionJob class. ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java + apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java
hg: openjfx/8u-dev/rt: [SCENEBUILDER] Moved content of EditorController.performAddTooltip() into AddTooltipToSelectionJob class.
Changeset: 6d5af625b22a Author:Eric Le Ponner eric.le.pon...@oracle.com Date: 2014-09-12 11:43 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/6d5af625b22a [SCENEBUILDER] Moved content of EditorController.performAddTooltip() into AddTooltipToSelectionJob class. ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/AddTooltipToSelectionJob.java apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java
hg: openjfx/8u-dev/rt: [SCENEBUILDER] Fixed Warnings (imports)
Changeset: 6cabbc998483 Author:Jerome Cambon Date: 2014-09-12 12:51 +0200 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/6cabbc998483 [SCENEBUILDER] Fixed Warnings (imports) ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/drag/target/RootDropTarget.java ! apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/wrap/UnwrapJob.java
Does JavaFX lack a public Property.getObservable() method?
I have noticed the lack of a getObservable() method of the property class, and I have come across a use case which might justify such a method, so I would like to discuss whether posting a new Jira issue for this is justified. I have implemented a simple toggle button with two states, on and off. The toggle button has a SimpleBooleanProperty value, and when the user switches the toggle button the value is negated. Now, in some cases I would like to bind the valueProperty to some observable boolean in my app, so that whenever that observable boolean is true, the button reflects that by switching to on. However, the problem is that if I bind the SimpleObjectProperty value to an observable boolean value, and then click the button to toggle it, a JavaFX exception tells me that I cannot negate the boolean value, since it is now bound. In such cases, I think it makes sense to have my toggle button change the state of the value it is bound to instead. But since the SimpleBooleanProperty does not have a getObservable() method, I have no way of accessing the value observed. Does this justify adding a public getObservable method to class Property? Yours Randahl
Re: Does JavaFX lack a public Property.getObservable() method?
Hi Randahl, why don't you use bidirectional binding for this purpose? -Martin On 09/12/2014 01:04 PM, Randahl Fink Isaksen wrote: I have noticed the lack of a getObservable() method of the property class, and I have come across a use case which might justify such a method, so I would like to discuss whether posting a new Jira issue for this is justified. I have implemented a simple toggle button with two states, on and off. The toggle button has a SimpleBooleanProperty value, and when the user switches the toggle button the value is negated. Now, in some cases I would like to bind the valueProperty to some observable boolean in my app, so that whenever that observable boolean is true, the button reflects that by switching to on. However, the problem is that if I bind the SimpleObjectProperty value to an observable boolean value, and then click the button to toggle it, a JavaFX exception tells me that I cannot negate the boolean value, since it is now bound. In such cases, I think it makes sense to have my toggle button change the state of the value it is bound to instead. But since the SimpleBooleanProperty does not have a getObservable() method, I have no way of accessing the value observed. Does this justify adding a public getObservable method to class Property? Yours Randahl
Re: Does JavaFX lack a public Property.getObservable() method?
Hi Randahl, if on button click you only want to update an external boolean property, bidirectional binding suggested by Martin should be all you need. If the problem is more complex, it might be useful to recognize that your toggle button serves two distinct functions: 1. It reflects the state (on/off) of an external object. 2. It manipulates an external object. Treat these functions separately, i.e. on button click, don't change the button value (and thus appearance) directly, but manipulate the observed object. // observe external object button.valueProperty().bind(externalObject.stateProperty()); // manipulate external object button.setOnAction(event - { if(button.getValue()) { externalObject.turnOff(); } else { externalOBject.turnOn(); } }); Your original button behavior of just changing the value (and thus appearance) is achieved by button.setOnAction(event - button.setValue(!button.getValue())); Best, Tomas On Fri, Sep 12, 2014 at 1:08 PM, Martin Sladecek martin.slade...@oracle.com wrote: Hi Randahl, why don't you use bidirectional binding for this purpose? -Martin On 09/12/2014 01:04 PM, Randahl Fink Isaksen wrote: I have noticed the lack of a getObservable() method of the property class, and I have come across a use case which might justify such a method, so I would like to discuss whether posting a new Jira issue for this is justified. I have implemented a simple toggle button with two states, on and off. The toggle button has a SimpleBooleanProperty value, and when the user switches the toggle button the value is negated. Now, in some cases I would like to bind the valueProperty to some observable boolean in my app, so that whenever that observable boolean is true, the button reflects that by switching to on. However, the problem is that if I bind the SimpleObjectProperty value to an observable boolean value, and then click the button to toggle it, a JavaFX exception tells me that I cannot negate the boolean value, since it is now bound. In such cases, I think it makes sense to have my toggle button change the state of the value it is bound to instead. But since the SimpleBooleanProperty does not have a getObservable() method, I have no way of accessing the value observed. Does this justify adding a public getObservable method to class Property? Yours Randahl
JAVAFX and Raspberry PI B
Hello: I installed Oracle Java SE 8 JDK for Linux ARMV6/7 on Raspberry PI using Oracle indications. http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/RaspberryPiFX/raspberryfx.html#overview I created an application to run on it and I have an issue loading FXML. The code is: private Initializable replaceSceneContent(String fxml) throws Exception { Locale locale = new Locale(es, ES); ResourceBundle rb = ResourceBundle.getBundle(internacionalizacion.lang,locale) ; FXMLLoader loader = new FXMLLoader(); InputStream in = Main.class.getResourceAsStream(fxml); loader.setBuilderFactory(new JavaFXBuilderFactory()); loader.setLocation(Main.class.getResource(fxml)); loader.setResources(rb); AnchorPane page; try { page = (AnchorPane) loader.load(in); } finally { in.close(); } Scene scene = new Scene(page, stage.getWidth(),stage.getHeight()-50); stage.setScene(scene); return (Initializable) loader.getController(); } java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:300) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:894) at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:56) at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:158) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NoClassDefFoundError: javafx/fxml/FXMLLoader at startup.Main.replaceSceneContent(Main.java:273) at startup.Main.gotoPantallaPrincipal(Main.java:209) at startup.Main.start(Main.java:180) at com.sun.javafx.application.LauncherImpl$8.run(LauncherImpl.java:837) at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298) at com.sun.glass.ui.lens.LensApplication$RunnableEvent.dispatch(LensApplication.java:182) at com.sun.glass.ui.lens.LensApplication._runLoop(LensApplication.java:860) at com.sun.glass.ui.lens.LensApplication.access$1800(LensApplication.java:58) at com.sun.glass.ui.lens.LensApplication$4.run(LensApplication.java:917) ... 1 more Do I need install anything else? Thanks Francisco
OpenJFX Wiki and the Platforms location.
https://wiki.openjdk.java.net/display/OpenJFX/Platforms Just noticed that we have Main - Getting Started - Platform - bunch of neat stuff. Feels odd that Platform is under Getting Started, as it has evolved to be a bunch of platform specific, and JavaFX feature general notes/documentation. Does it make sense to move Platform to be under Main ? -- David Hilldavid.h...@oracle.com Java Embedded Development A man's feet should be planted in his country, but his eyes should survey the world. -- George Santayana (1863 - 1952)
Re: JAVAFX and Raspberry PI B
FXMLLoader should be part of jfxrt-controls.jar (in jre/lib/ext directory) Jerome On 9/12/14, 4:36 PM, Francisco Javier Godino wrote: Hello: I installed Oracle Java SE 8 JDK for Linux ARMV6/7 on Raspberry PI using Oracle indications. http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/RaspberryPiFX/raspberryfx.html#overview I created an application to run on it and I have an issue loading FXML. The code is: private Initializable replaceSceneContent(String fxml) throws Exception { Locale locale = new Locale(es, ES); ResourceBundle rb = ResourceBundle.getBundle(internacionalizacion.lang,locale) ; FXMLLoader loader = new FXMLLoader(); InputStream in = Main.class.getResourceAsStream(fxml); loader.setBuilderFactory(new JavaFXBuilderFactory()); loader.setLocation(Main.class.getResource(fxml)); loader.setResources(rb); AnchorPane page; try { page = (AnchorPane) loader.load(in); } finally { in.close(); } Scene scene = new Scene(page, stage.getWidth(),stage.getHeight()-50); stage.setScene(scene); return (Initializable) loader.getController(); } java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:300) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:894) at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:56) at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:158) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NoClassDefFoundError: javafx/fxml/FXMLLoader at startup.Main.replaceSceneContent(Main.java:273) at startup.Main.gotoPantallaPrincipal(Main.java:209) at startup.Main.start(Main.java:180) at com.sun.javafx.application.LauncherImpl$8.run(LauncherImpl.java:837) at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298) at com.sun.glass.ui.lens.LensApplication$RunnableEvent.dispatch(LensApplication.java:182) at com.sun.glass.ui.lens.LensApplication._runLoop(LensApplication.java:860) at com.sun.glass.ui.lens.LensApplication.access$1800(LensApplication.java:58) at com.sun.glass.ui.lens.LensApplication$4.run(LensApplication.java:917) ... 1 more Do I need install anything else? Thanks Francisco
Re: JAVAFX and Raspberry PI B
On 9/12/14, 10:36 AM, Francisco Javier Godino wrote: Hello: I installed Oracle Java SE 8 JDK for Linux ARMV6/7 on Raspberry PI using Oracle indications. http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/RaspberryPiFX/raspberryfx.html#overview Are you sure you are getting the right JRE ? (Are you running with a full path to java). The problem is that you are not finding the class javafx/fxml/FXMLLoader which should be part of the 8.0 and 8u6 JDK. I probably would have recommended using the instructions at: https://wiki.openjdk.java.net/display/OpenJFX/OpenJFX+on+the+Raspberry+Pi because I helped edit those :-) The JDK mentioned in the tutorial link is pretty old, it refers to an early access version. The web link above refers to the current released version. As you may know there are two versions of the JDK for ARM. The one available for public download should be a full JRE and FXML should just work. Java SE Embedded (which allows you to subset the JRE) required 'compact2' to support FXML. This is the commercial version not available for public download. compact1 does not have XML support in the JRE and so the FXML classes may fail to load because they cannot resolve dependencies. I created an application to run on it and I have an issue loading FXML. The code is: private Initializable replaceSceneContent(String fxml) throws Exception { Locale locale = new Locale(es, ES); ResourceBundle rb = ResourceBundle.getBundle(internacionalizacion.lang,locale) ; FXMLLoader loader = new FXMLLoader(); InputStream in = Main.class.getResourceAsStream(fxml); loader.setBuilderFactory(new JavaFXBuilderFactory()); loader.setLocation(Main.class.getResource(fxml)); loader.setResources(rb); AnchorPane page; try { page = (AnchorPane) loader.load(in); } finally { in.close(); } Scene scene = new Scene(page, stage.getWidth(),stage.getHeight()-50); stage.setScene(scene); return (Initializable) loader.getController(); } java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:300) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:894) at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:56) at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:158) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NoClassDefFoundError: javafx/fxml/FXMLLoader at startup.Main.replaceSceneContent(Main.java:273) at startup.Main.gotoPantallaPrincipal(Main.java:209) at startup.Main.start(Main.java:180) at com.sun.javafx.application.LauncherImpl$8.run(LauncherImpl.java:837) at com.sun.javafx.application.PlatformImpl$7.run(PlatformImpl.java:335) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:301) at com.sun.javafx.application.PlatformImpl$6$1.run(PlatformImpl.java:298) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl$6.run(PlatformImpl.java:298) at com.sun.glass.ui.lens.LensApplication$RunnableEvent.dispatch(LensApplication.java:182) at com.sun.glass.ui.lens.LensApplication._runLoop(LensApplication.java:860) at com.sun.glass.ui.lens.LensApplication.access$1800(LensApplication.java:58) at com.sun.glass.ui.lens.LensApplication$4.run(LensApplication.java:917) ... 1 more Do I need install anything else? Thanks Francisco -- David Hilldavid.h...@oracle.com Java
Re: OpenJFX Wiki and the Platforms location.
On 2014-09-12, 10:54 AM, David Hill wrote: https://wiki.openjdk.java.net/display/OpenJFX/Platforms Just noticed that we have Main - Getting Started - Platform - bunch of neat stuff. Feels odd that Platform is under Getting Started, as it has evolved to be a bunch of platform specific, and JavaFX feature general notes/documentation. Does it make sense to move Platform to be under Main ? Makes sense to me. Platforms under Getting Started is likely there for historical reasons. Steve
Re: Does JavaFX lack a public Property.getObservable() method?
Thank you both of you for some good tips. I will try those approached instead. Randahl On 12 Sep 2014, at 14:37, Tomas Mikula tomas.mik...@gmail.com wrote: Hi Randahl, if on button click you only want to update an external boolean property, bidirectional binding suggested by Martin should be all you need. If the problem is more complex, it might be useful to recognize that your toggle button serves two distinct functions: 1. It reflects the state (on/off) of an external object. 2. It manipulates an external object. Treat these functions separately, i.e. on button click, don't change the button value (and thus appearance) directly, but manipulate the observed object. // observe external object button.valueProperty().bind(externalObject.stateProperty()); // manipulate external object button.setOnAction(event - { if(button.getValue()) { externalObject.turnOff(); } else { externalOBject.turnOn(); } }); Your original button behavior of just changing the value (and thus appearance) is achieved by button.setOnAction(event - button.setValue(!button.getValue())); Best, Tomas On Fri, Sep 12, 2014 at 1:08 PM, Martin Sladecek martin.slade...@oracle.com wrote: Hi Randahl, why don't you use bidirectional binding for this purpose? -Martin On 09/12/2014 01:04 PM, Randahl Fink Isaksen wrote: I have noticed the lack of a getObservable() method of the property class, and I have come across a use case which might justify such a method, so I would like to discuss whether posting a new Jira issue for this is justified. I have implemented a simple toggle button with two states, on and off. The toggle button has a SimpleBooleanProperty value, and when the user switches the toggle button the value is negated. Now, in some cases I would like to bind the valueProperty to some observable boolean in my app, so that whenever that observable boolean is true, the button reflects that by switching to on. However, the problem is that if I bind the SimpleObjectProperty value to an observable boolean value, and then click the button to toggle it, a JavaFX exception tells me that I cannot negate the boolean value, since it is now bound. In such cases, I think it makes sense to have my toggle button change the state of the value it is bound to instead. But since the SimpleBooleanProperty does not have a getObservable() method, I have no way of accessing the value observed. Does this justify adding a public getObservable method to class Property? Yours Randahl Randahl Fink Isaksen Inventor / Software architect / Java expert Owner of ROCK IT Mobile +45 26 25 88 84 Skype randahl Twitter @r4nd4hl
Lighthouse
I've open sourced the JavaFX app I was working on for the past six months or so. Lighthouse is a Bitcoin crowdfunding application that uses some of the more novel features of the Bitcoin protocol to allow middleman free fund raising. There's a video of it in action here: http://blog.vinumeris.com/2014/09/12/lighthouse-alpha-now-open-source/ and some screenshots here: https://github.com/vinumeris/lighthouse Additionally I've open sourced UpdateFX, which is an auto update engine that provides some interesting features: https://github.com/vinumeris/updatefx It's kind of rough still but if anyone is looking for an alternative to the existing update engines out there, take a look. I just wanted to say thanks to the OpenJFX team for your help and support this summer. I've very much enjoyed working both with you all and the framework you've created. I believe JavaFX is a surprisingly good fit for the Bitcoin community, because we suffer quite badly from the limitations and problems of web apps. HTML5 + decentralisation don't mix very well. A plain old desktop app works better, and JavaFX is a good way to build such things. thanks, -mike
Re: Lighthouse
Thanks for getting back to us Mike and letting us know about your successful use of JavaFX. The team does work hard and appreciates the kind words. Steve On 2014-09-12, 2:42 PM, Mike Hearn wrote: I've open sourced the JavaFX app I was working on for the past six months or so. Lighthouse is a Bitcoin crowdfunding application that uses some of the more novel features of the Bitcoin protocol to allow middleman free fund raising. There's a video of it in action here: http://blog.vinumeris.com/2014/09/12/lighthouse-alpha-now-open-source/ and some screenshots here: https://github.com/vinumeris/lighthouse Additionally I've open sourced UpdateFX, which is an auto update engine that provides some interesting features: https://github.com/vinumeris/updatefx It's kind of rough still but if anyone is looking for an alternative to the existing update engines out there, take a look. I just wanted to say thanks to the OpenJFX team for your help and support this summer. I've very much enjoyed working both with you all and the framework you've created. I believe JavaFX is a surprisingly good fit for the Bitcoin community, because we suffer quite badly from the limitations and problems of web apps. HTML5 + decentralisation don't mix very well. A plain old desktop app works better, and JavaFX is a good way to build such things. thanks, -mike
In(Sanity) Testing Mondays
Reminder, Monday is our weekly sanity testing. You can find your testing assignment at: https://wiki.openjdk.java.net/display/OpenJFX/Sanity+Testing Also please remember that the repo will be locked from 1am PDT until 1pm PDT. Happy testing! Lisa
Problem accessing jfx native libs under eclipse on windows
I'm a newbie to JavaFX, and hoping to be able to contribute down the road once I learn much more about it. To that end, I've been trying to get 8u-dev eclipse projects setup on a Win7 box so I can start stepping through the code. The current show-stopper is getting UnsatisfiedLinkErrors when the system is trying to access dlls, such as glass.dll. My rig: * jdk1.8.0_05 * eclipse-SDK-N20140722-2000-win32-x86_64 (Mars stable build, has fix for StackOverflow bug in eclipse j8 compiler) * hg clone of 8u-dev as of 8/26 Setup: * ran the gradle build (successfully) * imported the eclipse projects in the repo, all cleanly compile (but had to fix cross-project links and manually locate and attach 3p libs) * removed javafx.* and related JavaFX sources from JAVA_HOME/src * moved jfxrt.jar to a cache directory Failure situation: * attempting to launch jfx apps under eclipse debugger The following console output is typical of what I'm running into (with -verbose:jni on the command line): [Dynamic-linking native method java.lang.Object.registerNatives ... JNI] [Registering JNI native method java.lang.Object.hashCode] [Registering JNI native method java.lang.Object.wait] [Registering JNI native method java.lang.Object.notify] [Registering JNI native method java.lang.Object.notifyAll] [Registering JNI native method java.lang.Object.clone] [Dynamic-linking native method java.lang.System.registerNatives ... JNI] [Registering JNI native method java.lang.System.currentTimeMillis] [Registering JNI native method java.lang.System.nanoTime] [Registering JNI native method java.lang.System.arraycopy] [Dynamic-linking native method java.lang.Thread.registerNatives ... JNI] [Registering JNI native method java.lang.Thread.start0] [Registering JNI native method java.lang.Thread.stop0] [Registering JNI native method java.lang.Thread.isAlive] [Registering JNI native method java.lang.Thread.suspend0] [Registering JNI native method java.lang.Thread.resume0] [Registering JNI native method java.lang.Thread.setPriority0] [Registering JNI native method java.lang.Thread.yield] [Registering JNI native method java.lang.Thread.sleep] [Registering JNI native method java.lang.Thread.currentThread] [Registering JNI native method java.lang.Thread.countStackFrames] [Registering JNI native method java.lang.Thread.interrupt0] [Registering JNI native method java.lang.Thread.isInterrupted] [Registering JNI native method java.lang.Thread.holdsLock] [Registering JNI native method java.lang.Thread.getThreads] [Registering JNI native method java.lang.Thread.dumpThreads] [Registering JNI native method java.lang.Thread.setNativeName] [Dynamic-linking native method java.security.AccessController.getStackAccessControlContext ... JNI] [Dynamic-linking native method java.security.AccessController.getInheritedAccessControlContext ... JNI] [Dynamic-linking native method java.lang.Class.registerNatives ... JNI] [Registering JNI native method java.lang.Class.getName0] [Registering JNI native method java.lang.Class.getSuperclass] [Registering JNI native method java.lang.Class.getInterfaces0] [Registering JNI native method java.lang.Class.getClassLoader0] [Registering JNI native method java.lang.Class.isInterface] [Registering JNI native method java.lang.Class.getSigners] [Registering JNI native method java.lang.Class.setSigners] [Registering JNI native method java.lang.Class.isArray] [Registering JNI native method java.lang.Class.isPrimitive] [Registering JNI native method java.lang.Class.getComponentType] [Registering JNI native method java.lang.Class.getModifiers] [Registering JNI native method java.lang.Class.getDeclaredFields0] [Registering JNI native method java.lang.Class.getDeclaredMethods0] [Registering JNI native method java.lang.Class.getDeclaredConstructors0] [Registering JNI native method java.lang.Class.getProtectionDomain0] [Registering JNI native method java.lang.Class.getDeclaredClasses0] [Registering JNI native method java.lang.Class.getDeclaringClass0] [Registering JNI native method java.lang.Class.getGenericSignature0] [Registering JNI native method java.lang.Class.getRawAnnotations] [Registering JNI native method java.lang.Class.getConstantPool] [Registering JNI native method java.lang.Class.desiredAssertionStatus0] [Registering JNI native method java.lang.Class.getEnclosingMethod0] [Registering JNI native method java.lang.Class.getRawTypeAnnotations] [Dynamic-linking native method java.lang.ClassLoader.registerNatives ... JNI] [Registering JNI native method java.lang.ClassLoader.retrieveDirectives] [Dynamic-linking native method java.security.AccessController.doPrivileged ... JNI] [Dynamic-linking native method java.lang.Class.getPrimitiveClass ... JNI] [Dynamic-linking native method java.lang.Float.floatToRawIntBits ... JNI] [Dynamic-linking native method java.lang.Double.doubleToRawLongBits ... JNI] [Dynamic-linking native method java.lang.Double.longBitsToDouble ... JNI] [Dynamic-linking native method
Re: Problem accessing jfx native libs under eclipse on windows
Hi Richard, Did you follow the instructions at this link: https://wiki.openjdk.java.net/display/OpenJFX/Using+an+IDE ? You are picking up a set of shared libraries that do not match the java code you are running in the IDE. You need to set java.library.path. It's on the wiki and I meant to update it to be something sensible. My build puts the dll's in an artifacts directory: -Djava.library.path=${workspace_loc:rt}/../artifacts/sdk/rt/bin You will need to edit this expression to pick up the dll's from the standard build place (which I forget right now). Steve On 2014-09-12, 5:31 PM, Richard Steiger wrote: I'm a newbie to JavaFX, and hoping to be able to contribute down the road once I learn much more about it. To that end, I've been trying to get 8u-dev eclipse projects setup on a Win7 box so I can start stepping through the code. The current show-stopper is getting UnsatisfiedLinkErrors when the system is trying to access dlls, such as glass.dll. My rig: * jdk1.8.0_05 * eclipse-SDK-N20140722-2000-win32-x86_64 (Mars stable build, has fix for StackOverflow bug in eclipse j8 compiler) * hg clone of 8u-dev as of 8/26 Setup: * ran the gradle build (successfully) * imported the eclipse projects in the repo, all cleanly compile (but had to fix cross-project links and manually locate and attach 3p libs) * removed javafx.* and related JavaFX sources from JAVA_HOME/src * moved jfxrt.jar to a cache directory Failure situation: * attempting to launch jfx apps under eclipse debugger The following console output is typical of what I'm running into (with -verbose:jni on the command line): [Dynamic-linking native method java.lang.Object.registerNatives ... JNI] [Registering JNI native method java.lang.Object.hashCode] [Registering JNI native method java.lang.Object.wait] [Registering JNI native method java.lang.Object.notify] [Registering JNI native method java.lang.Object.notifyAll] [Registering JNI native method java.lang.Object.clone] [Dynamic-linking native method java.lang.System.registerNatives ... JNI] [Registering JNI native method java.lang.System.currentTimeMillis] [Registering JNI native method java.lang.System.nanoTime] [Registering JNI native method java.lang.System.arraycopy] [Dynamic-linking native method java.lang.Thread.registerNatives ... JNI] [Registering JNI native method java.lang.Thread.start0] [Registering JNI native method java.lang.Thread.stop0] [Registering JNI native method java.lang.Thread.isAlive] [Registering JNI native method java.lang.Thread.suspend0] [Registering JNI native method java.lang.Thread.resume0] [Registering JNI native method java.lang.Thread.setPriority0] [Registering JNI native method java.lang.Thread.yield] [Registering JNI native method java.lang.Thread.sleep] [Registering JNI native method java.lang.Thread.currentThread] [Registering JNI native method java.lang.Thread.countStackFrames] [Registering JNI native method java.lang.Thread.interrupt0] [Registering JNI native method java.lang.Thread.isInterrupted] [Registering JNI native method java.lang.Thread.holdsLock] [Registering JNI native method java.lang.Thread.getThreads] [Registering JNI native method java.lang.Thread.dumpThreads] [Registering JNI native method java.lang.Thread.setNativeName] [Dynamic-linking native method java.security.AccessController.getStackAccessControlContext ... JNI] [Dynamic-linking native method java.security.AccessController.getInheritedAccessControlContext ... JNI] [Dynamic-linking native method java.lang.Class.registerNatives ... JNI] [Registering JNI native method java.lang.Class.getName0] [Registering JNI native method java.lang.Class.getSuperclass] [Registering JNI native method java.lang.Class.getInterfaces0] [Registering JNI native method java.lang.Class.getClassLoader0] [Registering JNI native method java.lang.Class.isInterface] [Registering JNI native method java.lang.Class.getSigners] [Registering JNI native method java.lang.Class.setSigners] [Registering JNI native method java.lang.Class.isArray] [Registering JNI native method java.lang.Class.isPrimitive] [Registering JNI native method java.lang.Class.getComponentType] [Registering JNI native method java.lang.Class.getModifiers] [Registering JNI native method java.lang.Class.getDeclaredFields0] [Registering JNI native method java.lang.Class.getDeclaredMethods0] [Registering JNI native method java.lang.Class.getDeclaredConstructors0] [Registering JNI native method java.lang.Class.getProtectionDomain0] [Registering JNI native method java.lang.Class.getDeclaredClasses0] [Registering JNI native method java.lang.Class.getDeclaringClass0] [Registering JNI native method java.lang.Class.getGenericSignature0] [Registering JNI native method java.lang.Class.getRawAnnotations] [Registering JNI native method java.lang.Class.getConstantPool] [Registering JNI native method java.lang.Class.desiredAssertionStatus0] [Registering JNI native method java.lang.Class.getEnclosingMethod0] [Registering JNI
ACTION NEEDED: subscribe to new openjfx-changes mailing list to receive hg commit notifications
As discussed earlier, we are changing the commit notification alias for all openjfx project repositories [1] from the openjfx-dev discussion alias to a new openjfx-changes alias that will only be used for automated notification of changesets that are pushed to an openjfx repo. Please subscribe to this new alias [2] before Monday, 22-Sep-2014 if you want to continue receiving e-mail notification for hg commits. If you no longer wish to see commit messages, then you don't need to do anything. We will cut-over to the new alias some time on Monday, 22-Sep. I will send a reminder late next week along with a test message to the new alias. Please let me know if you have questions. -- Kevin [1] http://hg.openjdk.java.net/openjfx/ [2] http://mail.openjdk.java.net/mailman/listinfo/openjfx-changes
hg: openjfx/8u-dev/rt: Fix RT-36221: INNER/OUTER stroketype drawn incorrectly on Ubuntu
Changeset: 06b496f5c779 Author:flar james.gra...@oracle.com Date: 2014-09-12 17:10 -0700 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/06b496f5c779 Fix RT-36221: INNER/OUTER stroketype drawn incorrectly on Ubuntu Reviewed by: kcr ! modules/graphics/src/main/java/com/sun/prism/sw/SWContext.java
hg: openjfx/8u-dev/rt: 2 new changesets
Changeset: b2acb41b44b1 Author:hudson Date: 2014-09-10 08:28 -0700 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/b2acb41b44b1 Added tag 8u40-b05 for changeset 1d08d9490df0 ! .hgtags Changeset: f4e58490d406 Author:kcr Date: 2014-09-12 17:15 -0700 URL: http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/f4e58490d406 Automated merge with http://hg.openjdk.java.net/openjfx/8u/rt - modules/fxpackager/src/main/native/launcher/linux/DeployPlatform.h - modules/fxpackager/src/main/native/launcher/linux/launcher.c - modules/fxpackager/src/main/native/launcher/linux/xmlparser.c - modules/fxpackager/src/main/native/launcher/linux/xmlparser.h - modules/fxpackager/src/main/native/launcher/win/IconSwap.cpp - modules/fxpackager/src/main/native/launcher/win/WinLauncherSvc.cpp
Re: Problem accessing jfx native libs under eclipse on windows
Apologies to everyone, my Thunderbird seems to be spewing out messages while I'm composing them. I'll switch to writing in a text editor and mailing the finished draft to avoid continuing to spam y'all. -rjs