Cómo personalizar aplicaciones desktop utilizando Java Synth

Java Synth es un componente dentro del conjunto de herramientas de Swing, que se caracteriza por brindar una interfaz configurable y más agradable como experiencia para al usuario ya que permite personalizar el look and feel estándar de Java por uno creado mediante Synth.

 Synth está disponible a partir de la versión J2SE 5.0  y posee la cualidad de configurarse a través de un archivo xml, en el cual se definen los estilos que va a contener los elementos que conforman la aplicación.

Ejemplo de configuración de xml:

<pre><!—Aqui le aplicamos el estilo creado a un textfiled -->

Una vez creado el archivo xml que contiene los estilos de Synth, debemos cargarlo al contexto de la aplicación a través del método load de la clase SynthLookAndFeel, como se demuestra a continuación.

SynthLookAndFeel lookAndFeel = new SynthLookAndFeel();

lookAndFeel.load(new File("synthExample.xml").toURL());

UIManager.setLookAndFeel(lookAndFeel);

Algo que debemos tener en cuenta es que Synth no proporciona un estilo por defecto, y los componentes que no se encuentren definidos en nuestro archivo xml, synth no le aplica ningún estilo.  De todas formas se puede tener una parte de la aplicación con un estilo por defecto y otra con un estilo configurable mediante Synth. Esto se debe a que Synth permite asignarle un estilo en particular a un componente mediante su nombre pero a la vez también permite asignarle un estilo a un conjunto de componentes del mismo tipo a través de herencia de estilos (similar a como lo aplicaríamos en CSS). La manera de aplicar un estilo en herencia a través de Synth es creando un estilo y asociándolo al nombre de la clase que identifica al elemento. Por ejemplo, podemos tener un estilo para un elemento, combo box en particular o tener un estilo generalizado para todos los combo box de la aplicación. Ejemplo:

<!—Estilo de un combo box -->
<!—Aquí le aplicamos el estilo creado a todos los combo box de la aplicación, por herencia de estilos-->

Ventajas y desventajas de Synth

Una ventaja que propone Synth al igual que CSS es que a través de la herencia de estilos, como dijimos anteriormente, uno puede definir un estilo y aplicarlo a todos los componentes de la aplicación, de esta manera nos permite ahorrar código. Otra ventaja de los estilos creados mediante Synth, es que los estilos se comportan igual en distintas plataformas.

Hablando de puntos negativos que pudimos percibir, podemos decir que no hay demasiada documentación o experiencias de uso en la web, además de la proporcionada por Oracle en su página referido a Java Synth.

Otro desventaja puede ser que si solamente se trabaja con un solo archivo xml de configuración, este mismo puede crecer exponencialmente, contribuyendo a que se torne poco comprensible e inmantenible.

Facebook Twitter Linkedin Mail BVision