Author: kono
Date: 2012-09-20 16:55:07 -0700 (Thu, 20 Sep 2012)
New Revision: 30452

Modified:
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/IconCellRenderer.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DiscreteValueVisualPropertyEditor.java
   
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
Log:
refs #1471 Icon Cell renderer is still not working.  Need to chek its 
implementation.

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
    2012-09-20 23:53:56 UTC (rev 30451)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
    2012-09-20 23:55:07 UTC (rev 30452)
@@ -329,12 +329,13 @@
                                final TableCellRenderer renderer = 
editor.getDiscreteTableCellRenderer();
                                if (renderer != null)
                                        
cellRendererFactory.registerRenderer(valProp, renderer);
+                               
+                               final PropertyEditor cellEditor = 
editor.getPropertyEditor();
+
+                               if (cellEditor != null)
+                                       
cellEditorFactory.registerEditor(valProp, cellEditor);
                        }
-                       final PropertyEditor cellEditor = 
editor.getPropertyEditor();
-
-                       if (cellEditor != null)
-                               cellEditorFactory.registerEditor(valProp, 
cellEditor);
-
+                       
                        valProp.setValue(val);
                        valProp.setInternalValue(mapping);
                }

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/IconCellRenderer.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/IconCellRenderer.java
    2012-09-20 23:53:56 UTC (rev 30451)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/IconCellRenderer.java
    2012-09-20 23:55:07 UTC (rev 30452)
@@ -50,33 +50,17 @@
  * for passing proper icons.
  */
 public class IconCellRenderer<T> extends DefaultCellRenderer {
-       /**
-        *
-        */
+       
        private static final long serialVersionUID = -616290814339403108L;
+       
        private Map<?extends T, Icon> icons;
 
-       /**
-        * Creates a new IconCellRenderer object.
-        *
-        * @param icons  DOCUMENT ME!
-        */
+       
        public IconCellRenderer(Map<?extends T, Icon> icons) {
                this.icons = icons;
        }
 
-       /**
-        *  DOCUMENT ME!
-        *
-        * @param table DOCUMENT ME!
-        * @param value DOCUMENT ME!
-        * @param isSelected DOCUMENT ME!
-        * @param hasFocus DOCUMENT ME!
-        * @param row DOCUMENT ME!
-        * @param column DOCUMENT ME!
-        *
-        * @return  DOCUMENT ME!
-        */
+       @Override
        public Component getTableCellRendererComponent(JTable table, Object 
value, boolean isSelected,
                                                       boolean hasFocus, int 
row, int column) {
                if (isSelected) {

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DiscreteValueVisualPropertyEditor.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DiscreteValueVisualPropertyEditor.java
 2012-09-20 23:53:56 UTC (rev 30451)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DiscreteValueVisualPropertyEditor.java
 2012-09-20 23:55:07 UTC (rev 30452)
@@ -1,6 +1,7 @@
 package org.cytoscape.view.vizmap.gui.internal.editor;
 
 import org.cytoscape.view.vizmap.gui.editor.ContinuousEditorType;
+import org.cytoscape.view.vizmap.gui.internal.cellrenderer.IconCellRenderer;
 import 
org.cytoscape.view.vizmap.gui.internal.editor.propertyeditor.CyDiscreteValuePropertyEditor;
 
 /**
@@ -12,9 +13,13 @@
  */
 public class DiscreteValueVisualPropertyEditor<T> extends 
BasicVisualPropertyEditor<T> {
 
-       public DiscreteValueVisualPropertyEditor(final Class<T> type, final 
CyDiscreteValuePropertyEditor<T> propEditor) {
+       public DiscreteValueVisualPropertyEditor(final Class<T> type, final 
IconCellRenderer<T> cellRenderer,
+                       final CyDiscreteValuePropertyEditor<T> propEditor) {
                super(type, propEditor, ContinuousEditorType.DISCRETE);
 
-               discreteTableCellRenderer = REG.getRenderer(type);
+               if(cellRenderer != null)
+                       discreteTableCellRenderer = cellRenderer;
+               else
+                       discreteTableCellRenderer = REG.getRenderer(type);
        }
 }

Modified: 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
===================================================================
--- 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
 2012-09-20 23:53:56 UTC (rev 30451)
+++ 
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
 2012-09-20 23:55:07 UTC (rev 30452)
@@ -44,6 +44,7 @@
 import java.util.Map;
 import java.util.Set;
 
+import javax.swing.Icon;
 import javax.swing.JOptionPane;
 
 import org.cytoscape.application.CyApplicationManager;
@@ -58,6 +59,7 @@
 import org.cytoscape.view.model.Range;
 import org.cytoscape.view.model.VisualLexicon;
 import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.presentation.RenderingEngine;
 import org.cytoscape.view.presentation.RenderingEngineFactory;
 import org.cytoscape.view.vizmap.VisualMappingFunctionFactory;
 import org.cytoscape.view.vizmap.VisualMappingManager;
@@ -67,6 +69,7 @@
 import org.cytoscape.view.vizmap.gui.editor.ValueEditor;
 import org.cytoscape.view.vizmap.gui.editor.VisualPropertyEditor;
 import org.cytoscape.view.vizmap.gui.internal.AttributeSetManager;
+import org.cytoscape.view.vizmap.gui.internal.cellrenderer.IconCellRenderer;
 import org.cytoscape.view.vizmap.gui.internal.editor.mappingeditor.C2CEditor;
 import org.cytoscape.view.vizmap.gui.internal.editor.mappingeditor.C2DEditor;
 import 
org.cytoscape.view.vizmap.gui.internal.editor.mappingeditor.GradientEditor;
@@ -266,10 +269,10 @@
                return mappingTypeEditor;
        }
 
-       private void buildDiscreteEditors(final VisualLexicon lexicon) {
-               final Set<VisualProperty<?>> vps = 
lexicon.getAllVisualProperties();
+       private <V> void buildDiscreteEditors(final VisualLexicon lexicon) {
+               final Set<VisualProperty> vps = 
(Set)lexicon.getAllVisualProperties();
 
-               for (final VisualProperty<?> vp : vps) {
+               for (final VisualProperty<V> vp : vps) {
                        Range<?> range = vp.getRange();
 
                        // If data type is basic (String, Boolean, etc.) not 
custom editor
@@ -283,7 +286,17 @@
 
                        if (range instanceof DiscreteRange<?>) {
                                // Visual Property Editor.
-                               final Set<?> values = ((DiscreteRange<?>) 
range).values();
+                               final Set<V> values = ((DiscreteRange) 
range).values();
+//                             final RenderingEngine<CyNetwork> engine = 
appManager.getCurrentRenderingEngine();
+//                             
+//                             // CCurrent engine is not ready yet.
+//                             if(engine == null)
+//                                     return;
+//                             
+//                             Map<V, Icon> iconMap = new HashMap<V, Icon>();
+//                             for(V value: values)
+//                                     iconMap.put(value, 
engine.createIcon(vp, value, 12, 12));
+//                             IconCellRenderer<?> cellRenderer = new 
IconCellRenderer(iconMap);
 
                                if (this.getValueEditor(range.getType()) == 
null) {
                                        final DiscreteValueEditor<?> valEditor 
= new DiscreteValueEditor(appManager, range.getType(),
@@ -293,8 +306,9 @@
 
                                final CyDiscreteValuePropertyEditor<?> 
discretePropEditor = new CyDiscreteValuePropertyEditor(
                                                (DiscreteValueEditor) 
this.getValueEditor(range.getType()));
+                               
                                final VisualPropertyEditor<?> vpEditor = new 
DiscreteValueVisualPropertyEditor(range.getType(),
-                                               discretePropEditor);
+                                               null, discretePropEditor);
                                this.addVisualPropertyEditor(vpEditor, null);
                        }
                }

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