Java

JavaFX Real-World Apps: Monastery Disentis

Finally the first "JavaFX Real World Apps" post that actually covers an "app" and not an "application", meaning the first JavaFX application in this series that was designed for mobile devices and not the desktop. The application is simply called "Monastery Disentis". It was developed by cnlab in Switzerland. It can be used by visitors of the monastery as a guide. Below you can see a couple of screenshots that were taken on an Android device. Video: a screencast of the application. What is cool about this application is that everybody can try it out be following the [...]

By |2021-02-18T13:42:24+01:00May 8th, 2017|Java, JavaFX|5 Comments

JavaFX Tip 24: Custom Layouts for Performance and Flexibility

I just finished a two month sprint on advancing CalendarFX and getting it ready for release 8.4.0. One focus of this sprint was on performance. There are many things that can influence performance but when it comes to JavaFX the number of nodes in your scenegraph and CSS styling are top candidates for optimisation. After reviewing the custom controls that ship with CalendarFX I realized that many of them used a lot of nested panes (BorderPane, VBox, HBox, GridPane) in order to achieve a specific layout. Nested panes result in a high node count and complex CSS styling instructions. One simple example are [...]

By |2021-02-18T13:42:25+01:00February 1st, 2017|CalendarFX, Java, JavaFX, Tips & Tricks|0 Comments

JavaFX Real-World Apps: SkedPal

A new entry in the "Real World Applications" series. This time it is SkedPal, an application for managing a busy person's life intelligently. I have been consulting the SkedPal team in matters related to JavaFX and also when they made the decision to start using the CalendarFX framework for their calendar requirements. Below you can see a couple of screenshots of this attractive application. If you want to try it out yourself then you can simply register on the SkedPal website and download the desktop client (they also have mobile clients). I have asked Saied ArBabian, the found of SkedPal to [...]

By |2021-02-18T13:42:25+01:00July 13th, 2016|FlexganttFX, Java, JavaFX|0 Comments

Shadow Fields vs. Property Accessor Interface

Carl Dea recently followed up on a blog post of mine called Save Memory! Use Shadow Fields for Properties. In his blog he suggested the use of an interface called "Property Accessor" to eliminate the heavy use of boilerplate code that is needed in order to use  shadow fields. Carl also mentioned that he hasn't tested his approach with a lot of data and that he or some reader might follow up with a performance comparison. So here it comes. I wrote a small test application that implements the three strategies that Carl mentions in his post: standard properties that are instantiated [...]

By |2021-02-18T13:42:26+01:00April 4th, 2016|Java, JavaFX, Tips & Tricks|2 Comments

CalendarFX In Action: SkedPal!

If you are interested you can now see CalendarFX live in action. As of version 1.7 the AI scheduling software SkedPal has replaced their Swing-based calendar (MigCalendar) with CalendarFX 1.3 for JavaFX 8. The result is a much more consistent look and feel and user experience.    

By |2021-02-18T13:42:26+01:00April 1st, 2016|CalendarFX, JavaFX|0 Comments

JavaFX Tip 23: Save Memory! Shadow Fields for Properties.

Properties and property bindings introduced in Java 8 are extremely useful programming concepts. They are especially useful when you are developing user interfaces. In fact they are so useful that developers have fallen victim to the idea that everything should be a property instead of a primitive. Unfortunately they easily forget that properties such as SimpleLongProperty are much bigger objects than standard types such as Long. And of course they are much bigger than primitive data types such as long. In one of my current projects pretty much every model object used by the client is composed of properties. For many of these [...]

By |2021-02-18T13:42:26+01:00March 30th, 2016|Java, JavaFX, Tips & Tricks|21 Comments

JavaFX “Missing Features” Survey Results

I recently conducted a survey asking the community to tell me which features they are missing the most in JavaFX 8. The survey has been closed by now. It received over 100 submissions from various people, various companies, various industries. Overall the participants very quite satisfied with JavaFX so I would argue that the feedback was submitted by people who really care about the platform and would like to see it evolve over time. The following chart shows the exact distribution of the answers given by the participants when asked how satisfied they were with JavaFX. Categories / Issue [...]

By |2021-02-18T13:42:26+01:00January 25th, 2016|Java, JavaFX|0 Comments

JavaFX Real-World Apps: PSI Advanced Scheduling and Monitoring

I am happy to announce that there is a new entry for the "Real-World Apps" list. The company PSI has developed an application for "advanced scheduling and monitoring". The software will be used by the manufacturing industry. The screenshots look quite polished and attractive. PSI is one of the earliest adopters of FlexGanttFX, my JavaFX framework for visualizing schedules of any kind. https://youtu.be/hXdvTlca6rM?w=550 PSI - Operation Gantt PSI - Operation Detail PSI - Production Order PSI - Report PSI - Structural Gantt As usual I have done an interview with the developers. Michal [...]

By |2021-02-18T13:42:26+01:00January 25th, 2016|FlexganttFX, Java, JavaFX|2 Comments

JavaFX Real-World Playlist

I finally found some time to create a YouTube playlist with all the "Real-World" JavaFX applications that Alexander Casall and I presented at JavaOne 2015. Maybe you can find some inspiration. The videos show the following applications: EIZO - Curator Caliop Emirates Airlines - Network Capacity Optimization AISO - HRC-Matic Business Registry European Broadcasting Union - NEOS MINT Software Systems - Training and Resource Management (TRMS) Enjoy!