Author: sletellier Date: 2009-05-07 12:47:26 +0000 (Thu, 07 May 2009) New Revision: 2194 Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx Log: UI optimisation Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2009-05-07 11:03:30 UTC (rev 2193) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2009-05-07 12:47:26 UTC (rev 2194) @@ -71,17 +71,15 @@ protected NavigationTreeNode currentNode = null; protected InputContentUI currentUI = null; - public InputNavigationTreeSelectionAdapter(InputUI context, boolean register) { + public InputNavigationTreeSelectionAdapter(InputUI context) { super(InputUI.class, null, context, Strategy.PER_UI_TYPE); if (context.getNavigation() == null) { throw new IllegalArgumentException("could not have a null 'navigation' in ui " + context); } - if (register) { - // register in tree this listener - context.getNavigation().addTreeSelectionListener(this); - } + // register in tree this listener + context.getNavigation().addTreeSelectionListener(this); } @Override Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2009-05-07 11:03:30 UTC (rev 2193) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2009-05-07 12:47:26 UTC (rev 2194) @@ -34,6 +34,8 @@ <javax.swing.tree.DefaultTreeSelectionModel id='navigationSelectionModel' selectionMode='{javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION}'/> + <jaxx.runtime.swing.navigation.NavigationTreeCellRenderer id='navigationTreeCellRenderer' constructorParams='this'/> + <jaxx.runtime.swing.CardLayout2 id='cardlayout'/> <java.awt.CardLayout id='cardlayoutPrincipal'/> @@ -47,8 +49,6 @@ import fr.ifremer.isisfish.ui.WelcomePanelUI; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeModel; -import java.util.logging.Level; -import java.util.logging.Logger; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import fr.ifremer.isisfish.entities.Cell; @@ -81,6 +81,7 @@ import fr.ifremer.isisfish.datastore.RegionStorage; getContextValue(WelcomeSaveVerifier.class).addSaveVerifier(getVerifier()); +new fr.ifremer.isisfish.ui.input.InputNavigationTreeSelectionAdapter(this); protected InputAction getAction(){ return getContextValue(InputAction.class); @@ -133,12 +134,9 @@ String regionName = getRegion().getName(); setContextValue(getRegion()); NavigationTreeModel model = InputNavigationTreeSelectionAdapter.getTreeModel(regionName, getRegion()); - navigation.setSelectionModel(navigationSelectionModel); - navigation.setCellRenderer(new NavigationTreeCellRenderer(this)); setContextValue(model); navigation.setModel(model); - new InputNavigationTreeSelectionAdapter(this, true); setTreeSelection("$root"); } } @@ -258,7 +256,7 @@ </Table> <JPanel id="treePanel" name="treePanel" layout='{new BorderLayout()}'> <JScrollPane constraints='BorderLayout.CENTER'> - <JTree id="navigation" rootVisible="true" selectionRow='0' model='{new DefaultTreeModel(null)}'/> + <JTree id="navigation" selectionModel='{getNavigationSelectionModel()}' cellRenderer='{getNavigationTreeCellRenderer()}' rootVisible="true" selectionRow='0' model='{new DefaultTreeModel(null)}'/> </JScrollPane> </JPanel> </JPanel>