Re: use custom behavior class for TableView

2013-08-10 Thread Jonathan Giles

Hi Sven,

In general the behavior aspect of UI controls is not yet public API, so 
we've not yet given a huge amount of thought to how best to expose 
these. We've got ideas, but they won't be implemented as part of JavaFX 
8.0, although I hope that they will be as part of the 8.x series of 
releases. This explains why you're running into problems like the one 
you're mentioning :-)


I'd be interested to learn why you want to replace / modify the behavior 
of the TableView control (as it will help to inform future API 
decisions). It might also enable me to give some advice on how best to 
proceed now.


I'm not sure, but I'd imagine it is probably best to discuss this 
off-list as we may start to spam the list otherwise :-)


Thanks,
-- Jonathan

On 9/08/2013 11:18 p.m., Sven Ehrke wrote:

Hi,

I would like to use a custom Behavior class for a TableView and so I started as 
usual with a 'MyTableViewSkin'
class which I can activate via the css file. In order to reuse functionality of 
'TableViewSkin' and 'TableViewBehavior' I started to
let ' MyTableViewSkin' inherit from 'TableViewSkin and planned to let it's 
constructor simply call the super constructor like this:


super(tableView, new MyTableViewBehavior(tableView));


Unfortunately 'TableViewSkin' only defines the constructor


'TableViewSkin(final TableView tableView) '


and thus hides the one from ' TableViewSkinBase ' :


TableViewSkinBase(final C control, final B behavior)


which makes it impossible to call it.
Was this done on purpose and if yes how am I supposed to attach a custom 
behavior class ?




Thanks!


Regards,
Sven





use custom behavior class for TableView

2013-08-09 Thread Sven Ehrke

Hi, 

I would like to use a custom Behavior class for a TableView and so I started as 
usual with a 'MyTableViewSkin' 
class which I can activate via the css file. In order to reuse functionality of 
'TableViewSkin' and 'TableViewBehavior' I started to 
let ' MyTableViewSkin' inherit from 'TableViewSkin and planned to let it's 
constructor simply call the super constructor like this: 


super(tableView, new MyTableViewBehavior(tableView)); 


Unfortunately 'TableViewSkin' only defines the constructor 


'TableViewSkin(final TableView tableView) ' 


and thus hides the one from ' TableViewSkinBase ' : 


TableViewSkinBase(final C control, final B behavior) 


which makes it impossible to call it. 
Was this done on purpose and if yes how am I supposed to attach a custom 
behavior class ? 




Thanks! 


Regards, 
Sven