Easily Skinnable Swing Components

Dusan Pavlica is a senior Interaction Designer in the xDesign group. He moved from Prague to Los Angeles to support SOA/BI team, but he is working on JavaFX project currently.



The main idea of skinnable Swing components came up after James Gosling's presentation of Matisse (new GUI builder in NetBeans) at JavaOne 2005. Some people from audience were really excited about cool components used in the demo of the MP3 player. The components looked like rounded buttons with nice skins and completely different than the typical ugly Swing components. I would say the presentation was successful because of the cool look of the components.

So then, within the scope of the Innovation project (project focused on innovative ideas and design approaches in Prague's xDesign Group), we were thinking about some improvements of Matisse related to the ability to change components' skins easily. Then Jan Taus joined our team and was willing to work on it as a part of his Master's Thesis. I led him to implement it in a way that the user can re-skin a component easily without needing to write code.

He created an experimental NetBeans plug-in, which allows the user to set new skins of components in a visual way without coding. The user can prepare skins and even animations in a visual editor (e.g. Photoshop) and then can easily apply them to components in the Theme Editor.

There is a screen shot of the Theme Editor:


Some example of buttons in a new skin:


We presented all of the results of our research and experimental version of the Theme Editor to the NetBeans development team. They were interested in it and we discussed how to utilize the idea of easy skinning in NetBeans and the JavaFX project too. In my opinion, the improved version of the Theme Editor (e.g. its UI can be polished or it can be integrated into the Matisse better) could increase the popularity of Matisse or support the success of JavaFX.

Comments:

Post a Comment:
Comments are closed for this entry.
About

xDesign is a software user experience design group at Sun.
Follow us on Twitter : Flickr : Blog (see feeds below)

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today