Reloading stylesheets
    Tom Schindl 
    tom.schindl at bestsolution.at
       
    Tue Dec 10 04:30:56 PST 2013
    
    
  
There is internal API:
com.sun.javafx.css.StyleManager.getInstance().reloadStylesheets(scene);
which is GONE in FX8 (but there it is not needed anyways) if you want to
support both platforms you need to use reflection to call it.
In e(fx)clipse preview I do:
> if( isJavaFX2() ) {
> 	ReflectiveInvoke.onStyleManagerClass(scene);
> }
where the reflective vode looks like:
> public static void onStyleManagerClass(Scene s) throws Exception {
> 		/*
> 		 * com.sun.javafx.css.StyleManager.getInstance().reloadStylesheets(scene);
> 		 */
> 		Class<?> cl = Class.forName("com.sun.javafx.css.StyleManager");
> 		Method m1 = cl.getMethod("getInstance");
> 		Object o1 = m1.invoke(null);
> 		
> 		Method m2 = cl.getMethod("reloadStylesheets", Scene.class);
> 		m2.invoke(o1, s);
> 	}
Tom
On 10.12.13 13:21, Werner Lehmann wrote:
> Hi,
> 
> is there a way to reload previously loaded stylesheets (in FX2)?
> 
> Currently I have to restart the application each time I am changing the
> css. It would be nice to just close and reopen that window instead to
> see the new styles. I'd like to unload css automatically when closing a
> window - in debug mode - in order to avoid the application restart.
> 
> Or, even better, define a hotkey to update css immediately. Much like
> shift+ctrl+8 for ScenicView (only works in FX2 as far as I know).
> 
> Rgds
> Werner
    
    
More information about the openjfx-dev
mailing list