At the moment the Task frame has two levels, Category and Layer. I would like to propose a third Theme.
What is a theme? A theme identifies a sub set of features in a Layer which have their own style, a label and you can show/hide the layer. For feature layers an example would be a building you may have schools and churches that are rendered using different symbols. This corresponds to the ColorThemingStyle. For WMS layers you could use themes to represent each layer from the server, with the icon being the legend graphic from the server. Here when you show/hide a layer it would add or remove that layer from the WMS request and update the layer. To support this we would need to add a new Theme interface to the workbench.model, which describes the theme. Different type of Layerable would use their own implementations of this interface. public interface Theme { String getLabel(); void setLabel(String label); BasicStyle getStyle(); void setStyle(BasicStyle style); boolean isVisible(); void setVisible(boolean visible); } I would also propose a ThemedLayerable interface that would allow you to get the themes for the layer, Layerables that support themes would implement this interface. public interface ThemedLayerable extends Layerable { public List getThemes(); } Would would then need to modify the LayerTreeModel and the TreeLayerPanel to support this new kind of item in the tree. For Layers I would delegate getting the Themes from the Styles, and my new FilterTheming style would use this. I almost have this code ready to checkin, I'll post a diff so that people can have a look at what I've done and decide if this is something we should add to the core. Paul ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel