Author: kono
Date: 2011-06-29 17:35:38 -0700 (Wed, 29 Jun 2011)
New Revision: 25980

Modified:
   
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/SelectedVisualStyleManagerImpl.java
   
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
Log:
Broken synchronization between presentation and Visual Style Combo box had been 
fixed.

Modified: 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/SelectedVisualStyleManagerImpl.java
===================================================================
--- 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/SelectedVisualStyleManagerImpl.java
        2011-06-29 22:27:46 UTC (rev 25979)
+++ 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/SelectedVisualStyleManagerImpl.java
        2011-06-30 00:35:38 UTC (rev 25980)
@@ -1,5 +1,10 @@
 package org.cytoscape.view.vizmap.gui.internal;
 
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.session.events.SetCurrentRenderingEngineEvent;
+import org.cytoscape.session.events.SetCurrentRenderingEngineListener;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.presentation.RenderingEngine;
 import org.cytoscape.view.vizmap.VisualMappingManager;
 import org.cytoscape.view.vizmap.VisualStyle;
 import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
@@ -9,10 +14,12 @@
 import org.slf4j.LoggerFactory;
 
 public class SelectedVisualStyleManagerImpl implements
-               SelectedVisualStyleManager, SelectedVisualStyleSwitchedListener 
{
+               SelectedVisualStyleManager, 
SelectedVisualStyleSwitchedListener, SetCurrentRenderingEngineListener {
        
        private static final Logger logger = 
LoggerFactory.getLogger(SelectedVisualStyleManagerImpl.class);
        
+       private final VisualMappingManager vmm;
+       
        private VisualStyle selectedStyle;
        
        protected final VisualStyle defaultVS;
@@ -20,6 +27,7 @@
        public SelectedVisualStyleManagerImpl(final VisualMappingManager vmm) {
                if(vmm == null)
                        throw new NullPointerException("Visual Mapping Manager 
is missing.");
+               this.vmm = vmm;
                
                this.defaultVS = vmm.getDefaultVisualStyle();
                this.selectedStyle = this.defaultVS;
@@ -51,4 +59,18 @@
                return defaultVS;
        }
 
+       @Override
+       public void handleEvent(SetCurrentRenderingEngineEvent e) {
+               logger.debug("Presentation switched: " + 
e.getRenderingEngine());
+               final RenderingEngine<CyNetwork> engine = 
e.getRenderingEngine();
+               final VisualStyle targetStyle = 
vmm.getVisualStyle((CyNetworkView) engine.getViewModel());
+               logger.debug("New Style ========= " + targetStyle.getTitle());
+               if(targetStyle != this.selectedStyle) {
+                       selectedStyle = targetStyle;
+                       logger.debug("Presentation switch ========= Selected 
Style Switched to " + selectedStyle.getTitle());
+               }
+                       
+               
+       }
+
 }

Modified: 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
===================================================================
--- 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
    2011-06-29 22:27:46 UTC (rev 25979)
+++ 
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
    2011-06-30 00:35:38 UTC (rev 25980)
@@ -56,7 +56,10 @@
 import org.cytoscape.model.events.NetworkAddedEvent;
 import org.cytoscape.model.events.NetworkAddedListener;
 import org.cytoscape.session.CyApplicationManager;
+import org.cytoscape.session.events.SetCurrentRenderingEngineEvent;
+import org.cytoscape.session.events.SetCurrentRenderingEngineListener;
 import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.View;
 import org.cytoscape.view.model.events.NetworkViewAddedEvent;
 import org.cytoscape.view.model.events.NetworkViewAddedListener;
 import org.cytoscape.view.presentation.RenderingEngine;
@@ -98,7 +101,7 @@
 public class VizMapperMainPanel extends AbstractVizMapperPanel implements
                VisualStyleAddedListener, VisualStyleAboutToBeRemovedListener,
                PopupMenuListener, NetworkViewAddedListener, 
NetworkAddedListener,
-               CytoPanelComponent, SelectedVisualStyleSwitchedListener {
+               CytoPanelComponent, SelectedVisualStyleSwitchedListener, 
SetCurrentRenderingEngineListener {
 
        private final static long serialVersionUID = 1202339867854959L;
 
@@ -763,4 +766,18 @@
                final VisualStyle newStyle = e.getNewVisualStyle();
                this.visualStyleComboBox.setSelectedItem(newStyle);
        }
+
+       @Override
+       public void handleEvent(SetCurrentRenderingEngineEvent e) {
+               final RenderingEngine<CyNetwork> engine = 
e.getRenderingEngine();
+               CyNetworkView view = (CyNetworkView) engine.getViewModel();
+               final VisualStyle newStyle = vmm.getVisualStyle(view);
+               
+               if(visualStyleComboBox.getSelectedItem().equals(newStyle) == 
false) {
+                       
+                       logger.debug("Updating VS Combo Box to: " + 
newStyle.getTitle());
+                       this.visualStyleComboBox.setSelectedItem(newStyle);
+                       visualStyleComboBox.repaint();
+               }
+       }
 }

-- 
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