Author: kono
Date: 2010-01-27 16:08:51 -0800 (Wed, 27 Jan 2010)
New Revision: 19054

Modified:
   cytoscape/trunk/src/cytoscape/Cytoscape.java
   cytoscape/trunk/src/cytoscape/view/NetworkPanel.java
   cytoscape/trunk/src/cytoscape/visual/VisualMappingManager.java
   cytoscape/trunk/src/cytoscape/visual/ui/DefaultAppearenceBuilder.java
   cytoscape/trunk/src/cytoscape/visual/ui/VizMapperMainPanel.java
Log:
Removed duplicate event handling code.  Still digging for the confused Visual 
Style problem.

Modified: cytoscape/trunk/src/cytoscape/Cytoscape.java
===================================================================
--- cytoscape/trunk/src/cytoscape/Cytoscape.java        2010-01-27 23:14:21 UTC 
(rev 19053)
+++ cytoscape/trunk/src/cytoscape/Cytoscape.java        2010-01-28 00:08:51 UTC 
(rev 19054)
@@ -869,34 +869,35 @@
                if (viewIDs == null)
                        return;
 
+               CyNetworkView nview;
                for (String id : viewIDs) {
-                       CyNetworkView nview = (CyNetworkView) 
getNetworkViewMap().get(id);
+                       nview = getNetworkViewMap().get(id);
 
-                       if (nview != null) {
+                       if (nview != null && nview != nullNetworkView)
                                selectedNetworkViews.add(nview);
-                       }
                }
 
-               CyNetworkView cv = getCurrentNetworkView();
+               final CyNetworkView cv = getCurrentNetworkView();
 
-               if (!selectedNetworkViews.contains(cv)) {
+               if ((cv != nullNetworkView) && 
!selectedNetworkViews.contains(cv))
                        selectedNetworkViews.add(cv);
-               }
        }
 
+       
        /**
         * Returns the list of selected networks.
         */
        @SuppressWarnings("unchecked")
        public static List<CyNetwork> getSelectedNetworks() {
-               CyNetwork curr = getCurrentNetwork();
+               final CyNetwork curNet = getCurrentNetwork();
 
-               if (!selectedNetworks.contains(curr))
-                       selectedNetworks.add(curr);
+               if (!selectedNetworks.contains(curNet))
+                       selectedNetworks.add(curNet);
 
                return (List<CyNetwork>) selectedNetworks.clone();
        }
 
+       
        /**
         * Sets the list of selected networks.
         */
@@ -907,14 +908,14 @@
                        return;
 
                for (String id : ids) {
-                       CyNetwork n = (CyNetwork) getNetworkMap().get(id);
+                       final CyNetwork n = getNetworkMap().get(id);
 
                        if ((n != null) && (n != nullNetwork)) {
                                selectedNetworks.add(n);
                        }
                }
 
-               CyNetwork cn = getCurrentNetwork();
+               final CyNetwork cn = getCurrentNetwork();
 
                if (!selectedNetworks.contains(cn)) {
                        selectedNetworks.add(cn);

Modified: cytoscape/trunk/src/cytoscape/view/NetworkPanel.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/NetworkPanel.java        2010-01-27 
23:14:21 UTC (rev 19053)
+++ cytoscape/trunk/src/cytoscape/view/NetworkPanel.java        2010-01-28 
00:08:51 UTC (rev 19054)
@@ -91,23 +91,28 @@
 
 
 /**
- *
+ * GUI component for managing network list in current session.
  */
 public class NetworkPanel extends JPanel implements PropertyChangeListener, 
TreeSelectionListener,
                                                     SelectEventListener, 
ChangeListener {
-       protected SwingPropertyChangeSupport pcs = new 
SwingPropertyChangeSupport(this);
-       protected static CyLogger logger = 
CyLogger.getLogger(NetworkPanel.class);
+       
+       private static final long serialVersionUID = -7102083850894612840L;
+       
+       // Make this panel as a source of events.
+       private final SwingPropertyChangeSupport pcs = new 
SwingPropertyChangeSupport(this);
+               
        private final JTreeTable treeTable;
        private final NetworkTreeNode root;
        private JPanel navigatorPanel;
+       
        private JPopupMenu popup;
        private PopupActionListener popupActionListener;
-       
+
        private JMenuItem createViewItem;
        private JMenuItem destroyViewItem;
        private JMenuItem destroyNetworkItem;
        private JMenuItem editNetworkTitle;
-       public JMenuItem applyVisualStyleMenu;
+       private JMenuItem applyVisualStyleMenu;
        
        private BiModalJSplitPane split;
        private final NetworkTreeTableModel treeTableModel;
@@ -140,7 +145,8 @@
                        }
                }
                
-               
Cytoscape.getPropertyChangeSupport().addPropertyChangeListener(Cytoscape.NETWORK_TITLE_MODIFIED,
 this);
+               // Make this a prop change listener for Cytoscape global events.
+               
Cytoscape.getPropertyChangeSupport().addPropertyChangeListener(this);
                
                // For listening to adding/removing Visual Style events.
                Cytoscape.getVisualMappingManager().addChangeListener(this);
@@ -268,8 +274,7 @@
                treeTable.doLayout();
        }
 
-       // JBK added updateTitle
-       // 11-13-05
+       
        /**
         * update a network title
         */
@@ -294,9 +299,10 @@
         * @param event DOCUMENT ME!
         */
        public void onSelectEvent(SelectEvent event) {
-               treeTable.getTree().updateUI();
+               // TODO: is this method necessary?  Why this class is 
selecteventlistener?
        }
 
+       
        /**
         *  DOCUMENT ME!
         *
@@ -382,22 +388,20 @@
         * @param e DOCUMENT ME!
         */
        public void valueChanged(TreeSelectionEvent e) {
-               // logger.info("NetworkPanel: valueChanged - " + 
e.getSource().getClass().getName());
-               JTree mtree = treeTable.getTree();
+               // TODO: Every time user select a network name, this method 
will be called 3 times! 
+               
+               final JTree mtree = treeTable.getTree();
 
                // sets the "current" network based on last node in the tree 
selected
-               NetworkTreeNode node = (NetworkTreeNode) 
mtree.getLastSelectedPathComponent();
-               if ( node == null || node.getUserObject() == null ) {
-                       // logger.info("NetworkPanel: null node - returning");
+               final NetworkTreeNode node = (NetworkTreeNode) 
mtree.getLastSelectedPathComponent();
+               if ( node == null || node.getUserObject() == null )
                        return;
-               }
-
-               // logger.info("NetworkPanel: firing NETWORK_VIEW_FOCUS");
+               
                pcs.firePropertyChange(new PropertyChangeEvent(this, 
CytoscapeDesktop.NETWORK_VIEW_FOCUS,
-                                                          null, (String) 
node.getNetworkID()));
+                   null, (String) node.getNetworkID()));
 
                // creates a list of all selected networks 
-               List<String> networkList = new LinkedList<String>();
+               final List<String> networkList = new LinkedList<String>();
                try {
                        for ( int i = mtree.getMinSelectionRow(); i <= 
mtree.getMaxSelectionRow(); i++ ) {
                                NetworkTreeNode n = (NetworkTreeNode) 
mtree.getPathForRow(i).getLastPathComponent();
@@ -405,14 +409,13 @@
                                        networkList.add( n.getNetworkID() );
                        }
                } catch (Exception ex) { 
-                       logger.warn("Exception handling network panel change: 
"+ex.getMessage());
-                       // ex.printStackTrace();
+                       CyLogger.getLogger().warn("Exception handling network 
panel change: "+ex.getMessage());
+                       ex.printStackTrace();
                }
 
                if ( networkList.size() > 0 ) {
-                       // logger.info("NetworkPanel: firing 
NETWORK_VIEWS_SELECTED");
-                       pcs.firePropertyChange(new PropertyChangeEvent(this, 
CytoscapeDesktop.NETWORK_VIEWS_SELECTED,
-                                                                  null, 
networkList));
+                       Cytoscape.setSelectedNetworks(networkList);
+                       Cytoscape.setSelectedNetworkViews(networkList);
                } 
        }
 
@@ -437,6 +440,8 @@
                        // Network "0" is the default and does not appear in 
the netowrk panel
                        if (_network != null && 
!_network.getIdentifier().equals("0")) 
                                updateTitle(_network);                          
+               } else 
if(Cytoscape.CYTOSCAPE_INITIALIZED.equals(e.getPropertyName())) {
+                       updateVSMenu();
                }
        }
 
@@ -633,7 +638,11 @@
        }
 
        public void stateChanged(ChangeEvent e) {               
-               // Reset the children
+               updateVSMenu();
+       }
+       
+       
+       private void updateVSMenu() {
                applyVisualStyleMenu.removeAll();
                
                final Set<String> vsNames = new 
TreeSet<String>(Cytoscape.getVisualMappingManager().getCalculatorCatalog().getVisualStyleNames());
@@ -688,20 +697,18 @@
                final String label = ((JMenuItem) ae.getSource()).getText();
 
                if (DESTROY_VIEW.equals(label)) {
-                       final List<CyNetwork> selected = 
Cytoscape.getSelectedNetworks();                       
+                       final List<CyNetwork> selected = 
Cytoscape.getSelectedNetworks();       
+                       System.out.println("======= Num selected = " + 
selected.size());
                        for (final CyNetwork network: selected) {
+                               System.out.println("======= Deleting view: " + 
network.getTitle());
                                final CyNetworkView targetView = 
Cytoscape.getNetworkView(network.getIdentifier());
                                if (targetView != 
Cytoscape.getNullNetworkView()) {
                                        
Cytoscape.destroyNetworkView(targetView);
                                }
                        }
                } else if (CREATE_VIEW.equals(label)) {
-                       final CyNetworkView currentView = 
Cytoscape.getCurrentNetworkView();
                        final List<CyNetwork> selected = 
Cytoscape.getSelectedNetworks();       
                        
-                       // Exclude current network view 
-                       selected.remove(currentView.getNetwork());
-                       
                        for(CyNetwork network: selected) {
                                if 
(!Cytoscape.viewExists(network.getIdentifier()))
                                        
CreateNetworkViewAction.createViewFromCurrentNetwork(network);
@@ -714,9 +721,8 @@
                        CyNetworkNaming.editNetworkTitle(cyNetwork);
                        
Cytoscape.getDesktop().getNetworkPanel().updateTitle(cyNetwork);
                } else {
-                       // throw an exception here?
-                       NetworkPanel.logger.warn("Unexpected network panel 
popup option");
-               } // end of else
+                       CyLogger.getLogger().warn("Unexpected network panel 
popup option");
+               }
        }
 
        /**

Modified: cytoscape/trunk/src/cytoscape/visual/VisualMappingManager.java
===================================================================
--- cytoscape/trunk/src/cytoscape/visual/VisualMappingManager.java      
2010-01-27 23:14:21 UTC (rev 19053)
+++ cytoscape/trunk/src/cytoscape/visual/VisualMappingManager.java      
2010-01-28 00:08:51 UTC (rev 19054)
@@ -194,6 +194,8 @@
         * If the argument is null, the previous visual style is simply 
returned.
         */
        public VisualStyle setVisualStyle(final VisualStyle vs) {
+//             System.out.println("\n\n######### Set VS Called! ======: " + 
vs);
+//             Thread.dumpStack();
                
                if ((vs != null) && (vs != activeVS)) {
                        VisualStyle tmp = activeVS;

Modified: cytoscape/trunk/src/cytoscape/visual/ui/DefaultAppearenceBuilder.java
===================================================================
--- cytoscape/trunk/src/cytoscape/visual/ui/DefaultAppearenceBuilder.java       
2010-01-27 23:14:21 UTC (rev 19053)
+++ cytoscape/trunk/src/cytoscape/visual/ui/DefaultAppearenceBuilder.java       
2010-01-28 00:08:51 UTC (rev 19054)
@@ -158,7 +158,7 @@
                if (dab == null)
                        dab = new 
DefaultAppearenceBuilder(Cytoscape.getDesktop(), true);
 
-               Cytoscape.getVisualMappingManager().setVisualStyle(vsName);
+               //Cytoscape.getVisualMappingManager().setVisualStyle(vsName);
                
dab.mainView.updateBackgroungColor(Cytoscape.getVisualMappingManager().getVisualStyle()
                                                            
.getGlobalAppearanceCalculator()
                                                            
.getDefaultBackgroundColor());

Modified: cytoscape/trunk/src/cytoscape/visual/ui/VizMapperMainPanel.java
===================================================================
--- cytoscape/trunk/src/cytoscape/visual/ui/VizMapperMainPanel.java     
2010-01-27 23:14:21 UTC (rev 19053)
+++ cytoscape/trunk/src/cytoscape/visual/ui/VizMapperMainPanel.java     
2010-01-28 00:08:51 UTC (rev 19054)
@@ -777,7 +777,7 @@
                switchVS(vsName, true);
        }
 
-       private void switchVS(String vsName, boolean redraw) {
+       private void switchVS(String vsName, boolean redraw) {          
                if (ignore)
                        return;
 
@@ -1800,20 +1800,21 @@
                        Cytoscape.getDesktop().repaint();
        }
 
+       /**
+        * Action listener for the default image button.
+        * 
+        * @author kono
+        *
+        */
        class DefaultMouseListener extends MouseAdapter {
                public void mouseClicked(MouseEvent e) {
-                       if (javax.swing.SwingUtilities.isLeftMouseButton(e)) {
+                       if (SwingUtilities.isLeftMouseButton(e)) {
                                final String targetName = 
vmm.getVisualStyle().getName();
-                               final String focus = 
vmm.getNetwork().getIdentifier();
-
-                               final DefaultViewPanel panel = 
(DefaultViewPanel) DefaultAppearenceBuilder .showDialog(Cytoscape 
.getDesktop());
+                               final DefaultViewPanel panel = 
(DefaultViewPanel) DefaultAppearenceBuilder.showDialog(Cytoscape .getDesktop());
                                updateDefaultImage(targetName, (DGraphView) 
panel.getView(),
                                                   
defaultAppearencePanel.getSize());
                                
setDefaultPanel(defaultImageManager.get(targetName), false);
 
-                               
vmm.setNetworkView(Cytoscape.getCurrentNetworkView());
-                               vmm.setVisualStyle(targetName);
-                               Cytoscape.getDesktop().setFocus(focus);
                                Cytoscape.getDesktop().repaint();
                        }
                }
@@ -1939,19 +1940,7 @@
                /*
                 * Got global event
                 */
-
-               if 
(e.getPropertyName().equals(Cytoscape.CYTOSCAPE_INITIALIZED)) {
-                       String vmName = vmm.getVisualStyle().getName();
-                       setDefaultPanel(defaultImageManager.get(vmName),false);
-                       vsNameComboBox.setSelectedItem(vmName);
-                       vmm.setVisualStyle(vmName);
-                       setPropertyTable();
-                       visualPropertySheetPanel.setSorting(true);
-                       
-                       // Update dependency states
-                       
updateDependencyStates(vmm.getVisualStyle().getDependency());
-                       return;
-               } else if (e.getPropertyName().equals(Cytoscape.SESSION_LOADED)
+               if (e.getPropertyName().equals(Cytoscape.SESSION_LOADED)
                           || 
e.getPropertyName().equals(Cytoscape.VIZMAP_LOADED)) {
                        final String vsName = vmm.getVisualStyle().getName();
 

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to