FX Experience Has Gone Read-Only

I've been maintaining FX Experience for a really long time now, and I love hearing from people who enjoy my weekly links roundup. One thing I've noticed recently is that maintaining two sites (FX Experience and JonathanGiles.net) takes more time than ideal, and splits the audience up. Therefore, FX Experience will become read-only for new blog posts, but weekly posts will continue to be published on JonathanGiles.net. If you follow @FXExperience on Twitter, I suggest you also follow @JonathanGiles. This is not the end - just a consolidation of my online presence to make my life a little easier!

tl;dr: Follow me on Twitter and check for the latest news on JonathanGiles.net.

New in JavaFX 2.1: ComboBox

New in JavaFX 2.1: ComboBox

One of the missing features of JavaFX in the 2.0 release was a ComboBox control, and I’m very pleased to say that we’ll be filling this gap in JavaFX 2.1. Indeed, it is already in the developer preview builds we’re putting out, and has been sitting in the OpenJFX mercurial repo for some weeks now. I’m fortunate enough to even be getting bug reports filed in our Jira issue tracker, which is justification enough to be getting early developer preview releases out into your hands as early as we have!

Non-editable and editable ComboBox controls of all shapes and sizes!

(more…)

JavaFX links of the week, March 12

<warm-welcome />

 

<best-wishes />

Canned Animations

Canned Animations

I found this cool project for web developers this week called Animate.css. It has 52 ready to go animations that you can apply to any dom node. I thought having this for JavaFX would be really handy. We are planning on adding CSS animations to JavaFX in the future along with Web standard CSS properties. Once we do that you will be able to use Animate.css directly in JavaFX but I thought it was too cool to make you wait. So I have written JavaFX Transition classes for each of these 52 animations and put the code for them in the FXExperienceControls project. So now all you need to do in your code is:

Button btn = new Button("Button");
new TadaTransition(btn).play();

That will play the animation and clean up after its self. I put together a demo application that shows off all the animations. You can download and run the project Blog-Demos/CannedAnimations from our github repo.

Here is what it looks like, enjoy playing with it. I can’t wait to start using these in the applications I build πŸ™‚

JavaFX links of the week, March 5

Hey everyone. Hope you’re all doing fine. Here’s another weeks worth of links. Enjoy! πŸ™‚

That’s that. Catch you next week!

Announcing: FX Experience Tools

Announcing: FX Experience Tools

I have some cool new stuff for you today. I have been working on porting some of the little tools I wrote for JavaFX 1.X. Also I was inspired by the web css button creator UiParade Button Builder. So I created a simple theming tool for JavaFX. This is something I have wanted to do for ages and is actually the second one I have written. The first started from the point of view of supporting every feature that can be done with CSS in JavaFX, and this turned out to be a huge undertaking as there is an amazing amount of flexibility in styling the JavaFX controls with CSS. So this one was inspired by the UiParade one and tried to give a simple set of controls to adjust the look. Some of them are quite clever that you adjust one slider and it is adjusting dozens of css properties in varying amounts for you. I have also made the source code available for all of these apps along with the custom controls like a color picker. So you can download it and see how its works. Hopefully we will add more tools to it over time as we have ideas or have time to do some.

(more…)

JavaFX links of the week, February 27

Look at this – a post that is on time! Don’t expect this to happen too often πŸ™‚

That’s all – catch you all next week. πŸ™‚

 

JavaFX links of the week, February 21

Sorry about being late again! You wouldn’t believe how long my todo list is these days. My apologies! Enjoy πŸ™‚

Catch you next week….hopefully a bit earlier in the week than this…. πŸ™‚

Announcing JemmyFX

Yesterday our SQE (Software Quality Engineering) team pushed our JavaFX functional test suite, JemmyFX to OpenJFX! They also pushed some tests for Ensemble, our samples application. JemmyFX is based on Jemmy, a visual testing framework for Java used in NetBeans for many years. JemmyFX contains extensions which make it possible to write visual tests for JavaFX. Although JemmyFX is in the openjfx repo, you can download it and use it for writing visual tests for your own JavaFX applications.

For those folks who have been looking at contributing code to JavaFX, this is great news, because it means you can accelerate adoption of your specific features by also writing the tests necessary to ensure correctness, either as JUnit tests or now as functional tests using Jemmy. All you guys working on DatePicker, I’m looking at you πŸ˜‰

A Short Tour Through JavaFX-UI-Common

A Short Tour Through JavaFX-UI-Common

We’ve just recently announced the release of the “javafx-ui-common” project into OpenJFX. The name may be a little underwhelming, but the content is absolutely core to JavaFX. For most developers interested in contributing to JavaFX and in understanding how the system works, javafx-ui-common and javafx-ui-controls will be the two most important projects, both of which are now open source, and are part of the “JavaFX Public API” shown in the diagram. For developers interested in porting JavaFX to other platforms or improving the graphics performance — well we will be open sourcing Prism and Glass in the next few months :-).

Since javafx-ui-common is such a foundational part of the JavaFX platform, I thought I should give a short tour of what is in there, including the (gasp!) non-public portions. As always, non-public API (or rather, unsupported API, meaning anything that is not in the javafx namespace such as com.sun.*) cannot be depended on from release to release. But for those of you wondering how things work, there is some very important stuff buried in the unsupported packages, and for those of you wanting to actually hack on OpenJFX, this will be of even greater interest. If you haven’t yet, you might want to brush up on the overall architecture with this article.

In fact, our tour will begin in the unsupported package, with the Toolkit class, which you see as the second layer in the above diagram. This article is of interest to anybody wanting to work on JavaFX itself.

(more…)