Author: clopes
Date: 2012-06-20 10:27:32 -0700 (Wed, 20 Jun 2012)
New Revision: 29642

Modified:
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/CyActivator.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTask.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTaskFactory.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTask.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTaskFactory.java
Log:
Fixes #1146 (Mappings are not displayed in the Visual Mapping Browser after 
loading a session).
Also sets the newly created or copied visual style as current (done by the 
tasks, not the UI classes).

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/CyActivator.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/CyActivator.java
      2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/CyActivator.java
      2012-06-20 17:27:32 UTC (rev 29642)
@@ -123,7 +123,7 @@
                SetViewModeAction viewModeAction = new SetViewModeAction();
                
                DefaultViewEditorImpl defViewEditor = new 
DefaultViewEditorImpl(defaultViewPanel,editorManager,cyApplicationManagerServiceRef,vmmServiceRef,vizMapperUtil,cyEventHelperServiceRef,viewModeAction);
-               CreateNewVisualStyleTaskFactory createNewVisualStyleTaskFactory 
= new 
CreateNewVisualStyleTaskFactory(visualStyleFactoryServiceRef,vmmServiceRef);
+               CreateNewVisualStyleTaskFactory createNewVisualStyleTaskFactory 
= new 
CreateNewVisualStyleTaskFactory(visualStyleFactoryServiceRef,vmmServiceRef,cyEventHelperServiceRef);
                DeleteVisualStyleTaskFactory removeVisualStyleTaskFactory = new 
DeleteVisualStyleTaskFactory(vmmServiceRef);
                ImportDefaultVizmapTaskFactory importDefaultVizmapTaskFactory = 
new 
ImportDefaultVizmapTaskFactory(vizmapReaderManagerServiceRef,vmmServiceRef,cyApplicationConfigurationServiceRef,
 cyEventHelperServiceRef);
                VizMapPropertySheetBuilder vizMapPropertySheetBuilder = new 
VizMapPropertySheetBuilder(menuManager,cyNetworkManagerServiceRef,propertySheetPanel,editorManager,defaultViewPanel,cyTableManagerServiceRef,vizMapperUtil,vmmServiceRef);
@@ -131,7 +131,7 @@
                
                VizMapperMainPanel vizMapperMainPanel = new 
VizMapperMainPanel(visualStyleFactoryServiceRef,defViewEditor,iconManager,colorMgr,vmmServiceRef,menuManager,editorManager,propertySheetPanel,vizMapPropertySheetBuilder,editorWindowManager,cyApplicationManagerServiceRef,cyEventHelperServiceRef,importDefaultVizmapTaskFactory,dialogTaskManagerServiceRef,viewModeAction);
                RenameVisualStyleTaskFactory renameVisualStyleTaskFactory = new 
RenameVisualStyleTaskFactory(vmmServiceRef);
-               CopyVisualStyleTaskFactory copyVisualStyleTaskFactory = new 
CopyVisualStyleTaskFactory(vmmServiceRef,visualStyleFactoryServiceRef);
+               CopyVisualStyleTaskFactory copyVisualStyleTaskFactory = new 
CopyVisualStyleTaskFactory(vmmServiceRef,visualStyleFactoryServiceRef,cyEventHelperServiceRef);
                CreateLegendTaskFactory createLegendTaskFactory = new 
CreateLegendTaskFactory(cyApplicationManagerServiceRef, vmmServiceRef);
                DeleteMappingFunctionTaskFactory 
deleteMappingFunctionTaskFactory = new 
DeleteMappingFunctionTaskFactory(propertySheetPanel,vmmServiceRef, 
cyApplicationManagerServiceRef);
                

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
       2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapperMainPanel.java
       2012-06-20 17:27:32 UTC (rev 29642)
@@ -193,12 +193,12 @@
                final VisualStyle style = (VisualStyle) 
visualStyleComboBox.getSelectedItem();
 
                if (!style.equals(lastStyle)) {
-                       switchVS(style);
+                       switchTo(style);
                        eventHelper.fireEvent(new 
SetCurrentVisualStyleEvent(this, style));
                }
        }
 
-       private void switchVS(final VisualStyle style) {
+       private void switchTo(final VisualStyle style) {
                // Close editor windows
                editorWindowManager.closeAllEditorWindows();
                vizMapPropertySheetBuilder.setPropertyTable(style);
@@ -265,7 +265,7 @@
                }
 
                // Switch back to the original style.
-               switchVS(this.vmm.getDefaultVisualStyle());
+               switchTo(vmm.getDefaultVisualStyle());
 
                // Sync check box and actual lock state
                spcs.firePropertyChange("UPDATE_LOCK", null, true);
@@ -276,7 +276,6 @@
        }
 
        void updateDefaultImage(final VisualStyle vs, final 
RenderingEngine<CyNetwork> engine, final Dimension size) {
-
                logger.debug("Creating Default Image for new visual style " + 
vs.getTitle());
                Image image = defaultImageManager.remove(vs);
 
@@ -360,12 +359,11 @@
                // Style already exists
                if (vsComboBoxModel.getIndexOf(newStyle) != -1) {
                        logger.info(newStyle.getTitle() + " is already in the 
combobox.");
-                       switchVS(newStyle);
+                       switchTo(newStyle);
                        return;
                }
 
                vsComboBoxModel.addElement(newStyle);
-               visualStyleComboBox.setSelectedItem(newStyle);
        }
 
        @Override
@@ -379,7 +377,7 @@
                        curStyle.apply(view);
                        view.updateView();
                } else if (!viewStyle.equals(curStyle)) {
-                       switchVS(viewStyle);
+                       switchTo(viewStyle);
                        eventHelper.fireEvent(new 
SetCurrentVisualStyleEvent(this, viewStyle));
                }
        }
@@ -393,7 +391,7 @@
                        final VisualStyle curStyle = (VisualStyle) 
visualStyleComboBox.getSelectedItem();
 
                        if (curStyle == null || !curStyle.equals(viewStyle)) {
-                               switchVS(viewStyle);
+                               switchTo(viewStyle);
                                eventHelper.fireEvent(new 
SetCurrentVisualStyleEvent(this, viewStyle));
                        }
                }
@@ -415,7 +413,7 @@
                // Switch to the default style if necessary
                if (toBeRemoved.equals(selectedStyle)) {
                        final VisualStyle defaultStyle = 
this.vmm.getDefaultVisualStyle();
-                       switchVS(defaultStyle);
+                       switchTo(defaultStyle);
 
                        // Apply to the current view
                        final CyNetworkView view = 
applicationManager.getCurrentNetworkView();
@@ -441,7 +439,7 @@
                        final VisualStyle lastStyle = (VisualStyle) 
visualStyleComboBox.getSelectedItem();
 
                        // Also check if the style is not already selected
-                       if (style.equals(lastStyle) == false)
+                       if (!style.equals(lastStyle))
                                eventHelper.fireEvent(new 
SetCurrentVisualStyleEvent(this, style));
                }
        }
@@ -477,7 +475,7 @@
                        SwingUtilities.invokeLater(new Runnable() {
                                @Override
                                public void run() {
-                                       switchVS(vmm.getCurrentVisualStyle());
+                                       switchTo(vmm.getCurrentVisualStyle());
                                        
showAllVPButton.setSelected(PropertySheetUtil.isAdvancedMode());
                                }
                        });
@@ -494,10 +492,31 @@
 
        @Override
        public void handleEvent(final SetCurrentVisualStyleEvent e) {
-               final VisualStyle newStyle = e.getVisualStyle();
-               final Object currentSelected = 
visualStyleComboBox.getSelectedItem();
+               final VisualStyle curStyle = e.getVisualStyle();
+               final VisualStyle selectedStyle = (VisualStyle) 
visualStyleComboBox.getModel().getSelectedItem();
+               
+               if (curStyle != null && !curStyle.equals(selectedStyle)) {
+                       final CyNetworkView currentView = 
applicationManager.getCurrentNetworkView();
 
-               if (newStyle != null && !newStyle.equals(currentSelected))
-                       visualStyleComboBox.setSelectedItem(newStyle);
+                       // Apply only if necessary.
+                       if (currentView != null) {
+                               final VisualStyle curViewStyle = 
vmm.getVisualStyle(currentView);
+
+                               if (curViewStyle == null || 
!curViewStyle.equals(curStyle)) {
+                                       vmm.setVisualStyle(curStyle, 
currentView);
+                                       curStyle.apply(currentView);
+                                       currentView.updateView();
+                               }
+                       }
+                       
+                       SwingUtilities.invokeLater(new Runnable() {
+                               @Override
+                               public void run() {
+                                       
visualStyleComboBox.setSelectedItem(curStyle);
+                               }
+                       });
+                       
+                       switchTo(curStyle);
+               }
        }
 }

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTask.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTask.java
 2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTask.java
 2012-06-20 17:27:32 UTC (rev 29642)
@@ -1,8 +1,10 @@
 package org.cytoscape.view.vizmap.gui.internal.task;
 
+import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.view.vizmap.VisualMappingManager;
 import org.cytoscape.view.vizmap.VisualStyle;
 import org.cytoscape.view.vizmap.VisualStyleFactory;
+import org.cytoscape.view.vizmap.events.SetCurrentVisualStyleEvent;
 import org.cytoscape.work.AbstractTask;
 import org.cytoscape.work.ProvidesTitle;
 import org.cytoscape.work.TaskMonitor;
@@ -19,12 +21,15 @@
        public String vsName;
 
        private final VisualMappingManager vmm;
-
        private final VisualStyleFactory factory;
+       private final CyEventHelper eventHelper;
 
-       public CopyVisualStyleTask(final VisualMappingManager vmm, final 
VisualStyleFactory factory) {
+       public CopyVisualStyleTask(final VisualMappingManager vmm,
+                                                          final 
VisualStyleFactory factory,
+                                                          final CyEventHelper 
eventHelper) {
                this.factory = factory;
                this.vmm = vmm;
+               this.eventHelper = eventHelper;
        }
 
        @Override
@@ -38,5 +43,7 @@
                final VisualStyle copiedStyle = 
factory.createVisualStyle(originalStyle);
                copiedStyle.setTitle(vsName);
                vmm.addVisualStyle(copiedStyle);
+               
+               eventHelper.fireEvent(new SetCurrentVisualStyleEvent(this, 
copiedStyle));
        }
 }

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTaskFactory.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTaskFactory.java
  2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CopyVisualStyleTaskFactory.java
  2012-06-20 17:27:32 UTC (rev 29642)
@@ -1,5 +1,6 @@
 package org.cytoscape.view.vizmap.gui.internal.task;
 
+import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.view.vizmap.VisualMappingManager;
 import org.cytoscape.view.vizmap.VisualStyleFactory;
 import org.cytoscape.work.AbstractTaskFactory;
@@ -9,15 +10,18 @@
 
        private final VisualMappingManager vmm;
        private final VisualStyleFactory factory;
+       private final CyEventHelper eventHelper;
 
-       public CopyVisualStyleTaskFactory(final VisualMappingManager vmm, final 
VisualStyleFactory factory) {
+       public CopyVisualStyleTaskFactory(final VisualMappingManager vmm,
+                                                                         final 
VisualStyleFactory factory,
+                                                                         final 
CyEventHelper eventHelper) {
                this.vmm = vmm;
                this.factory = factory;
+               this.eventHelper = eventHelper;
        }
 
        @Override
        public TaskIterator createTaskIterator() {
-               return new TaskIterator(new CopyVisualStyleTask(vmm, factory));
+               return new TaskIterator(new CopyVisualStyleTask(vmm, factory, 
eventHelper));
        }
-
 }

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTask.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTask.java
    2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTask.java
    2012-06-20 17:27:32 UTC (rev 29642)
@@ -3,9 +3,11 @@
 import java.io.IOException;
 import java.util.Iterator;
 
+import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.view.vizmap.VisualMappingManager;
 import org.cytoscape.view.vizmap.VisualStyle;
 import org.cytoscape.view.vizmap.VisualStyleFactory;
+import org.cytoscape.view.vizmap.events.SetCurrentVisualStyleEvent;
 import org.cytoscape.work.AbstractTask;
 import org.cytoscape.work.ProvidesTitle;
 import org.cytoscape.work.TaskMonitor;
@@ -28,11 +30,15 @@
        
        private final VisualStyleFactory vsFactory;
        private final VisualMappingManager vmm;
+       private final CyEventHelper eventHelper;
        
-       public CreateNewVisualStyleTask(final VisualStyleFactory vsFactory, 
final VisualMappingManager vmm) {
+       public CreateNewVisualStyleTask(final VisualStyleFactory vsFactory,
+                                                                       final 
VisualMappingManager vmm,
+                                                                       final 
CyEventHelper eventHelper) {
                super();
                this.vsFactory = vsFactory;
                this.vmm = vmm;
+               this.eventHelper = eventHelper;
        }
 
        
@@ -41,24 +47,25 @@
                        return;
 
                // Create new style.  This method call automatically fire event.
-               final VisualStyle newStyle = 
vsFactory.createVisualStyle(vsName);
-               vmm.addVisualStyle(newStyle);
-               logger.info("CreateNewVisualStyleTask created new Visual Style: 
" + newStyle.getTitle());
+               final VisualStyle style = vsFactory.createVisualStyle(vsName);
+               vmm.addVisualStyle(style);
+               logger.debug("CreateNewVisualStyleTask created new Visual 
Style: " + style);
+               eventHelper.fireEvent(new SetCurrentVisualStyleEvent(this, 
style));
        }
        
        
        public ValidationState getValidationState(final Appendable errMsg){
+               Iterator<VisualStyle> it = 
this.vmm.getAllVisualStyles().iterator();
                
-               Iterator<VisualStyle> it = 
this.vmm.getAllVisualStyles().iterator();
                while(it.hasNext()){
                        VisualStyle exist_vs = it.next();
+                       
                        if (exist_vs.getTitle().equalsIgnoreCase(vsName)){
                                try {
                                        errMsg.append("Visual style "+ vsName 
+" already existed!");
                                        return ValidationState.INVALID;
+                               } catch (IOException e) {
                                }
-                               catch (IOException e){
-                               }
                        }
                }
                

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTaskFactory.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTaskFactory.java
     2012-06-20 17:27:18 UTC (rev 29641)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/task/CreateNewVisualStyleTaskFactory.java
     2012-06-20 17:27:32 UTC (rev 29642)
@@ -1,5 +1,6 @@
 package org.cytoscape.view.vizmap.gui.internal.task;
 
+import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.view.vizmap.VisualMappingManager;
 import org.cytoscape.view.vizmap.VisualStyleFactory;
 import org.cytoscape.work.AbstractTaskFactory;
@@ -9,14 +10,18 @@
 
        private final VisualStyleFactory vsFactory;
        private final VisualMappingManager vmm;
+       private final CyEventHelper eventHelper;
 
-       public CreateNewVisualStyleTaskFactory(final VisualStyleFactory 
vsFactory, final VisualMappingManager vmm) {
+       public CreateNewVisualStyleTaskFactory(final VisualStyleFactory 
vsFactory,
+                                                                               
   final VisualMappingManager vmm,
+                                                                               
   final CyEventHelper eventHelper) {
                this.vsFactory = vsFactory;
                this.vmm = vmm;
+               this.eventHelper = eventHelper;
        }
 
        @Override
        public TaskIterator createTaskIterator() {
-               return new TaskIterator(new CreateNewVisualStyleTask(vsFactory, 
vmm));
+               return new TaskIterator(new CreateNewVisualStyleTask(vsFactory, 
vmm, eventHelper));
        }
 }

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