SimpleStyleable<Foo>Properties API Questions

Danno Ferrin danno.ferrin at
Wed Mar 13 18:23:29 PDT 2013

So I am getting around to porting my style code for my deck control to
JDK8, and I ran across the SimpleStyleable<Foo>Property family of objects,
and I have a couple of questions/crutiques

1. Why is it marked abstract?  The docs claim
that StyleableProperty#getCssMetaData() is not implemented and you have to
do it, and yet not only is it implemented it is final, and you cannot
override it!  There are no abstract methods, so the abstract modifier could
easily be removed.

2.  Why does it extend from Simple<Foo>Property instead of
Styleable<Foo>Property?  Just an implementation convenience?  I think it
would be more valuable to extend from the Styleable property than the
Simple property, since simple only adds implementation but styleable adds
implementation for a new interface.  I see myself adding more
StyleableDoubleProperties that are backed by a Simple varient than a
SimpleDoubleProperty backed by the styleable varient.

Is it too late in the game to make these API changes?
Danno Ferrin

More information about the openjfx-dev mailing list