adding controls

Jonathan Giles jonathan.giles at
Thu Dec 15 15:50:42 PST 2011

Hey Tom,

I'm so pleased to see you're eager to get your work contributed back to 
OpenJFX. I hope this is the beginning of a number of contributions 
being made back to the OpenJFX project from people.

There is a process that needs to be worked through from having an idea 
(or initial code drop) to seeing it appear in a future JavaFX release. 
The early parts of this process are well-defined, but we're still 
working on defining the entire process.

The first step is that you need to sign the Oracle Contributor 
Agreement, if you haven't already. You can find the website and form at 
[1]. I am not a lawyer of any description, but the basic premise is 
that you need to have the legal right to contribute the code you want 
to contribute.

The UI controls team has a member whose fulltime job is developing what 
we call UX specifications (UX = User Experience). Essentially these 
documents cover the functional expectations for every UI control, and 
normally includes descriptions of each function, diagrams detailing 
user interaction expectations, and details on mouse and keyboard input 
requirements / shortcuts. In the case of the calendar picker and 
spinner controls, we already have these UX specifications written up. 
Hopefully we'll be able to make these documents available soon, so that 
you (and others) may refer to them in implementing your controls. As 
you can probably imagine, these documents are wonderfully detailed and 
often open your eyes to functionality that you'd never even considered 
(and it is much better to consider it earlier in the process rather 
than after the control has shipped!).

There is a lot of work that goes into a control, outside of 
engineering. In particular, we have an SQE team who write tests 
(normally at a higher functional level - based largely on the UX 
specifications). Writing and running these tests takes time, and for 
JavaFX 2.1 we're already committed to what engineering can develop, and 
what SQE can test. There are plans afoot to getting more of the SQE 
testing infrastructure open sourced so that external developers can 
both run and write their own functional tests, but again we're not 
quite there yet. What this means is that the calendar and spinner 
controls won't be able to be included in JavaFX 2.1, but can certainly 
be considered for inclusion in future releases.

Our plan is to open an incubator mercurial repo soon, that will be able 
to facilitate the development of this code before it finds a home in 
the OpenJFX repo itself. Once the code is in this repo, I'd like to 
offer to help you with these controls, so that we may get them 
developed to a point where they can appear in a future release of 

The other thing you may want to get started on is discussing the API 
design and seeking feedback. The openjfx-dev mailing list is certainly 
the best place for this discussion to take place, and I look forward to 
hearing about it.


Thanks for being so keen to help fill in the gaps!
-- Jonathan 

On Thursday, 15 December 2011 6:05:31 p.m., Tom Eugelink wrote:
> Ok. So I've got a spinner and calendarpicker control lined up in 
> JFXtras. How would I go about adding it to OpenJFX?
> Tom

More information about the openjfx-dev mailing list