The Wayback Machine - https://web.archive.org/web/20111211191103/http://fxexperience.com:80/

Ok, this post is slightly early, but I’m not going to be around much for the next three days, so I thought I’d sneak it out a few hours early rather than make you all wait. Also, because I have very, very little time to write this post, it’s going to be a little more succinct than usual. All will return to usual next week, but for now, please enjoy! :-)

That’s that for another week. I’ll catch you back here in a weeks time…..

A very brief blog post to mention that just now the OpenJFX website and the openjfx-dev mailing list both appeared online. I’d recommend everyone interested in OpenJFX developments sign up for the mailing list.

Sometime soon the source code for UI Controls will appear in the mercurial repo. UI Controls are the first part of JavaFX to be open sourced, followed by the rest of the toolkit over the coming months. All development being done on UI controls will appear in this repo, as it happens. The source code that will appear shortly is based on the 2.1 release of JavaFX. This means that soon you will be able to build development snapshots of OpenJFX as it progresses towards each official release. This is exciting for me as it gives you early access to our APIs, allowing you to give us feedback (via our Jira tracker), which in turn allows for us to improve the API before it is released (and set in stone).

It is exciting times – I hope you all get involved! We have much more to discuss, but that can wait for another day.

One thing I see asked a lot (either directly via email, or in the rather excellent JavaFX Forums) is why does TableView (and ListView) look like this in JavaFX 2.0:

A TableView control using default styling and API as provided in JavaFX 2.0.

Read the rest of this entry »

A heap of interesting links this week, so I’m going to skip the introduction and get right into it. Enjoy! :-)

That’s all folks. Keep up all the great work and I’ll be back in a weeks time to cover everything that happens this coming week! :-)

Welcome to another week! :-) There is a heap of good links this week – it seems the quality of blog posts is certainly increasing these days! Keep it up folks :-) As always, I hope you enjoy some of the links below, and always feel free to email me links to include.

  • I mentioned last week that the ThingsFX Swing-in-JavaFX project didn’t support key events, but that it was coming soon. In actual fact, I was wrong – it is already supported.
  • Speaking of ThingsFX, one of the members of that team, Roman Kennke, blogged elsewhere about the Swing in JavaFX integration, and even put up a demo applet that shows the current implementation. As you’ll note, it is a little slow, but it shows a lot of promise once faster options are made available.
  • Tom Schindl has released e(fx)clipse 0.0.8, and now e(fx)clipse also has an official website. This project is very exciting, so if you are an eclipse user and want top-notch JavaFX tooling support, you should check this out and provide feedback.
  • Zonski continues blogging about his research and development with JavaFX 2.0. This week he talks about file downloading in JavaFX 2.0 (over HTTP).
  • Johan Vos has blogged about visualizing REST XML data in JavaFX controls, making use of the DataFX project.
  • Tom Eugelink follows up his JavaFX 2.0 bubblemark explorations after being told of a runtime switch for JavaFX 2.0 that removes the 60fps limit that JavaFX imposes.
  • The slide deck that Stephen Chin and Peter Pilgrim used at Devoxx 2011 for their “JavaFX 2.0 – A Developer’s Guide” session is available online for those interested.
  • Patrick Champion blogged about extending a JavaFX 2.0 control to add functionality. I should probably add that their are simpler ways to doing this in many cases, which I covered in a JavaOne talk called “Custom UI Controls and Charts with JavaFX 2.0“.
  • Andre Hogenkamp has posted a second blog post about running JavaFX 2.0 in Linux (whilst awaiting official support from Oracle).
  • Scott Hommel has blogged about using the JavaFX Screen API to determine the dimensions of the users screen.
  • Eric Bruno blogged about JavaFX 2.0 binding APIs. Whilst it is a good blog to cover the main concepts of binding in JavaFX, it skips over some simpler options that are possible for the specific use case mentioned in the post. For example, rather than bind the TableView width/height to the scene width/height properties (and place them inside a Group layout), if a StackPane is used instead the TableView will grow automatically without needing any bindings. Similarly, some controls have their max width/height set to the pref width/height, so it is simply a matter of calling, say, button.setMaxHeight(Double.MAX_VALUE) to have them grow automatically when placed in a relevant layout.
  • I’ve come across two JavaFX-related projects on GitHub that people may be interested in, but unfortunately no related websites for further details. Firstly, user ‘nahi’ has JRubyFX, and user ‘skrb’ has SVGLoader. Fortunately the project names are fairly self-explanatory :-)

Keep up the great work folks. Catch you all in a weeks time.

Here we go again – this week there are a heap of JavaFX links, so I’m just going to get right in to it – enjoy! :-)

Well, that’s it for another week. Hope you found something useful. Catch you in a weeks time! :-)

Another week, another round of links from the JavaFX world. I hope you all find something of interest. Enjoy! :-)

That’s all for another week. Keep up the great work folks and I’ll be back in a weeks time to highlight everything you’ve been up to! :-)

Here we go for another week! :-) It seems the number of JavaFX links is really starting to pick up after JavaOne. The most notable news this week was that Oracle has started the open source discussion. Find all the details, and plenty of other interesting links, in this weeks JavaFX links roundup!

Hope you all enjoyed the links – catch you all in a weeks time! :-)

I just sent the following letter to the OpenJDK community “discuss” mailing list:

Hi OpenJDK community!

As announced at JavaOne we (Oracle) would love to contribute JavaFX into OpenJDK as a new project called “JFX”. For some who have been following along, we’ve talked about this for a long time but finally (finally!) we’re ready to act on it and open source the platform. We are not just interested in open sourcing the code, however, we also want to move into an open development model. We already have an open bug database[1]. The project uses Mercurial, so we should fit in pretty well into OpenJDK.

Our basic motivation for wanting to open source JFX is to built a community and ecosystem support and adoption around JavaFX by increasing transparency. Of course we are also interested in getting patches and early feedback from the community[2]! Our goal is to provide the next-generation Java client toolkit, and JFX would be the next step along that path, which hopefully culminates in a JSR for the Java 9 timeframe and including JFX as proper part of the JDK. I would be the initial Project lead for JFX.

A little bit about our project:
It is a significant contribution to the corpus of open source code
It includes over 6000+ public API members (methods / constructors / etc)
It includes over 11,500 unit tests
Core libraries such as observable collections and binding
Scene graph, effects, graphics
CSS support for JavaFX
Media
WebView
Prism (hardware accelerated graphics, including openGL and D3D and java2D implementations)
Glass (windowing system, base porting layer, including mac, linux, and windows implementations)
UI Controls and Charts

Our builds are all Ant, with JUnit for testing (there is some ‘make’ in there for native parts). We also have NetBeans projects setup for each area. There is a lot of code that we’ll be releasing, so as a matter of practicality we’re going to release different parts of JavaFX over the course of the next few months, starting with UI controls followed by charts. We’ll put up a full roadmap onto our project pages, should we be approved to become part of OpenJDK. We’ll make sure that the open source code is always fully buildable by anybody using the sources + a binary plug (which will become unnecessary as we open source the remaining pieces). All of the above listed modules will be open sourced and fully buildable.

What do you think? I’d love to hear any issues and hopefully be able to resolve those prior to requesting an official vote.

Thanks
Richard

[1] http://javafx-jira.kenai.com
[2] A good example of the sort of interesting stuff going on out there can be found here: http://jroller.com/neugens/entry/embed_swing_inside_javafx_2

This is the first step towards open sourcing JavaFX into OpenJDK. First I wanted to talk with the community about it, and if it looks favorable, I’ll follow up with an official project proposal. Here’s hoping! If you are a subscriber to “discuss”, please go and throw in some good word for the idea and if you have any questions I’d like to hear those too. If you aren’t a member of “discuss”, go join :-) . You can do so here.

It feels good to finally be getting this all out in the open source!

Having been traveling for the last three weeks, I’ve not been able to post the weekly JavaFX links roundup. Today I’m trying to make up for this by posting all the links I gathered as I was traveling (and on vacation). There are two problems with this approach: 1) what follows is basically information overload, and 2) I almost certainly missed links. I hope you can all forgive me for this one time, and I also hope you find a heap of interesting links in this post (it took me a looonnggg time to write this week!).

Whilst I’m here, I must note that it was great meeting so many people at JavaOne. The number of times I was speaking to someone who didn’t know me, only to see my name badge and know exactly who I was because of this blog was actually very impressive. I’m surprised so many of you read this blog! Anyway, with that (and because this post is already long enough) let’s get straight into it… :-)

Phew! That’s that for another week. I’ll get back into the regular schedule starting next week, so hopefully next weeks posting won’t be as great an ordeal (for you and me!) next week. Catch you all in a weeks time folks :-)