JavaFX Tip 18: Path Clipping

I recently noticed that the PopOver control, which I committed to the ControlsFX project, does not properly clip its content. It became obvious when I was working on the accordion popover for the FlexCalendarFX framework. Whenever the last titled pane was expanded the bottom corners were no longer rounded but square. After placing a red rectangle as content to the titled pane it became clear to me that I forgot to add clipping. The following picture shows the problem. Normally clipping in JavaFX is quite easy. All it takes is an additional node and a call to setClip(node). However, normally [...]

By |2021-02-18T13:42:29+01:00February 18th, 2015|ControlsFX, Java, JavaFX, Tips & Tricks|3 Comments

2015: The Year When JavaFX Takes Over

  I must say that I very much enjoy using Google trends to evaluate the importance of a technology and to see what its future will look like. So today I ran a comparison between "Java Swing" and "JavaFX". The result shows two things: once we enter the next year JavaFX will be more relevant than Swing but JavaFX will not be that relevant either. I think this is totally wrong. Based on the feedback I am getting from the community and also on the projects that I had contact with I foresee a rapid increase in JavaFX usage (and Google [...]

By |2021-02-18T13:42:30+01:00October 27th, 2014|ControlsFX, FlexGantt, JavaFX, Swing|4 Comments

New Custom Control: TaskProgressView

I have written a new custom control and commited it to the ControlsFX project. It is a highly specialized control for showing a list of background tasks, their current status and progress. This is actually the first control I have written for ControlsFX just for the fun of it, meaning I do not have a use case for it myself (but sure one will come eventually). The screenshot below shows the control in action. If you are already familiar with the javafx.concurrent.Task class you will quickly grasp that the control shows the value of its title, message, and progress properties. [...]

By |2021-02-18T13:42:30+01:00October 13th, 2014|ControlsFX, JavaFX, Tips & Tricks|9 Comments

New Release: FlexGanttFX 1.0.0

I finally managed to put together a 1.0.0 production-ready release of FlexGanttFX. After two early access releases at the beginning of the year I put in a lot of hours to get the framework to a maturity level that I deem to be high enough for real-world application development. The release can be downloaded from the product website at I would recommend to run the three standalone demos in this distribution to get an idea of FlexGanttFX's capabilities. FlexGanttFX is much bigger than a regular JavaFX control. The view consists of 83 and the model of 58 classes. [...]

By |2021-02-18T13:42:30+01:00September 2nd, 2014|ControlsFX, FlexGantt, JavaFX|4 Comments

JavaFX Tip 10: Custom Composite Controls

Writing custom controls in JavaFX is a simple and straight forward process. A control class is needed for controlling the state of the control (hence the name). A skin class is needed for the apperance of the control. And more often than not a CSS file for customizing the apperance. A common approach for controls is to hide the nodes they are using inside their skin class. The TextField control for example uses two instances of javafx.scene.text.Text. One for the regular text, one for the prompt text. These nodes are not accessible via the TextField API. If you want to get a [...]

By |2021-02-18T13:42:30+01:00July 18th, 2014|ControlsFX, Java, JavaFX, Tips & Tricks|4 Comments

Something to hide? You need HiddenSidesPane

One of my Gantt chart users wanted to use as much real estate on the screen as possible and asked if the scrollbars could be removed. But how do you navigate without scrollbars? Ok, there are all kinds of keyboard shortcuts and of course the usual mouse drag already supported by FlexGanttFX, but a visual control like a scrollbar is something most users would still expect to see these days (at least on desktops). So here is the solution: I used to have a manager who when asked "do you want me to do this or that?" would always [...]

By |2021-02-18T13:42:31+01:00February 24th, 2014|ControlsFX, FlexGantt, Java, JavaFX|7 Comments

And another one: MasterDetailsPane

I finished another JavaFX control today, which I urgently needed for my FlexGanttFX control: a master details pane, which allows the user to show / hide a node with detailed information for a so-called "master" node. My use case is a dual Gantt chart control where a primary (master) Gantt chart is initially shown and then a secondary (details) Gantt chart can be added to the window (stage). By using the MasterDetailsPane the user can easily toggle the visibility of the second Gantt chart at the bottom. At the same time each Gantt chart also has a property sheet [...]

By |2021-02-18T13:42:31+01:00February 4th, 2014|ControlsFX, Java, JavaFX|2 Comments

New JavaFX Control PlusMinusAdjuster

Today I had once again the pleasure to write a small and highly specialized control for JavaFX, which might be useful for others as well. I am calling it PlusMinusAdjuster and all it does is firing value events with values ranging from -1 to +1. The difference to a normal slider is that it continues to fire events even when the value has not changed. This kind of behavior is useful for implementing scrolling through large data sets. A normal scrollbar often causes big jumps even when the user only moves it a few pixels. For me this was [...]

By |2021-02-18T13:42:31+01:00January 28th, 2014|ControlsFX, FlexGantt, JavaFX|3 Comments