Suppose control would support have generics type, to make the requirement on 
the Skin formal.

Control<T extends Skin>
Control<AgendaSkin>

Then getSkin would expose information for every skin the control has, without 
polluting the control's API. Would that work for you?

Tom

On 23-3-2015 22:03, Tomas Mikula wrote:
Sure, it is a workaround that works, but I don't think type cast
should be the recommended way to do this (or to do anything).

Tomas

On Mon, Mar 23, 2015 at 4:15 PM, Tom Eugelink <t...@tbee.org> wrote:
On 23-3-2015 20:30, Tomas Mikula wrote:
Control does not know what API is available on the Skin

I have many controls that require a skin that implements a certain interface
(refresh() is often present). Granted, this is not something that is
compiler checkable via the setSkin method, but it can fail quickly at
runtime. Works for me.

https://github.com/JFXtras/jfxtras/blob/8.0/jfxtras-agenda/src/main/java/jfxtras/internal/scene/control/skin/agenda/AgendaSkin.java


Tom

Reply via email to