From IconView to BetterIconView
As a trainer in the NetBeans Certified Training I regularly deliver the Nodes & Explorer Views (German pdf) session. During that session, I introduce students to the different explorer views. And, especially for this session, I wrote a small demo program that shows not only the advantages of the views, but also the problems with their representations. Especially the "IconView" stands out with its less than beautiful appearance. So, I made a virtue out of necessity and prepared, especially for the training, my own better implementation of this view. Thus I can easily show students how to create custom explorer views for the Nodes API.
Toni Epple likes my implementation view and he showed it last December to Jaroslav Tulach. Yesterday Jaroslav had the time to take my few lines of code to replace the old IconView implementation with mine, in the NetBeans sources.
As you can see from the screenshot below, the old "IconView" isn't optimal. The focus is missing, the size calculation of the height amount is too large, and the nodes overlap with long texts:
My new implementation is pretty simple and not perfect in every detail, but certainly a lot better than the old version in the NetBeans Platform.
Here is a screenshot with three selected nodes and a proper focus border behavior:
The source code can be seen here. It is very simple to extend a "ListView" to create a new "IconView".
You should bear in mind that you do not work in explorer views with real world nodes, but with optimized wrappers. In a renderer I convert the given object value to a node with the helper class "Visualizer":
Node node = Visualizer.findNode(value);
Once you have overcome that hurdle, you can realize everything that Swing offers. Your creativity is the only limit. I would like to refer to Geertjans blog where he uses the Visual Library to create an Explorer View.
best regards,
Josh.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)





Comments
Jaroslav Tulach replied on Mon, 2011/01/31 - 5:26pm
Aljoscha Rittner replied on Tue, 2011/02/01 - 4:41am
in response to:
Jaroslav Tulach
Hi!
I also hope that this is compatible. But the old version was so unusual that no one has used them. ;-)
br, josh.
Matt Coleman replied on Tue, 2011/11/15 - 12:49am
in response to:
Aljoscha Rittner
was it compatible?i have been having problems too
web designer buffalo
Ryan Fitz replied on Tue, 2011/11/15 - 1:21am
Mateo Gomez replied on Fri, 2012/02/03 - 12:39am
in response to:
Aljoscha Rittner
Rahul Dev replied on Mon, 2012/08/20 - 11:05am
Edward Villanueva replied on Thu, 2012/09/20 - 7:22pm
Muhammad Danish replied on Fri, 2012/11/09 - 3:17am
Muhammad Danish replied on Mon, 2012/11/12 - 8:27am
Muhammad Danish replied on Sun, 2012/11/18 - 6:36am
John Johny replied on Thu, 2012/11/29 - 3:38am
John Johny replied on Fri, 2012/11/30 - 2:57am
Lyza Carmen replied on Fri, 2012/12/07 - 11:51pm
Nice work. I'm going to check it out. lhaizza
Bryan Low replied on Thu, 2013/03/07 - 10:16pm
Hillview Peak facilities provide full family entertainment needs for your family and loved ones. Indulge in a serene and tranquil lifestyle right in the heart of Hillview.Several buses are available near Hillview Peak along with shopping centers and restaurants.
Hillview Peak