Author: kono
Date: 2010-11-17 18:23:18 -0800 (Wed, 17 Nov 2010)
New Revision: 22898
Added:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/ColorContinuousMappingCellRenderer.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditor.java
Modified:
core3/default-mappingcalculators/trunk/pom.xml
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMapping.java
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMappingFactory.java
core3/vizmap-gui-api/trunk/pom.xml
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/EditorManager.java
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/VisualPropertyEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertySheetBuilder.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/AbstractVisualPropertyEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DoubleVisualPropertyEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/BelowAndAbovePanel.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2CMappingEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2DMappingEditor.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/ContinuousMappingEditorPanel.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/EditorValueRangeTracer.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditorPanel.java
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/event/CellEditorEventHandler.java
core3/vizmap-gui-impl/trunk/src/main/resources/META-INF/spring/bundle-context-vizmapper.xml
Log:
Continuous editor is partially working (color only.)
Modified: core3/default-mappingcalculators/trunk/pom.xml
===================================================================
--- core3/default-mappingcalculators/trunk/pom.xml 2010-11-18 02:05:10 UTC
(rev 22897)
+++ core3/default-mappingcalculators/trunk/pom.xml 2010-11-18 02:23:18 UTC
(rev 22898)
@@ -6,7 +6,7 @@
<parent>
<artifactId>parent</artifactId>
<groupId>org.cytoscape</groupId>
- <version>1.0-SNAPSHOT</version>
+ <version>3.0.0-alpha4-SNAPSHOT</version>
</parent>
<properties>
Modified:
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMapping.java
===================================================================
---
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMapping.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMapping.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -157,7 +157,10 @@
@Override
public void apply(final View<? extends CyTableEntry> view) {
if (view == null)
- return; // empty list, nothing to do
+ return;
+
+ if(this.points.size() == 0)
+ return;
doMap(view);
}
@@ -180,7 +183,7 @@
*/
private void doMap(final View<? extends CyTableEntry> view) {
- CyRow row = view.getModel().getCyRow();
+ final CyRow row = view.getModel().getCyRow();
if (row.isSet(attrName, attrType)) {
// skip Views where source attribute is not defined;
Modified:
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMappingFactory.java
===================================================================
---
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMappingFactory.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/default-mappingcalculators/trunk/src/main/java/org/cytoscape/view/vizmap/mappings/ContinuousMappingFactory.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -11,7 +11,7 @@
Class<K> attrValueType, VisualProperty<V> vp) {
// Validate attribute type: Continuous Mapping is compatible
with Numbers only.
- if(Number.class.isAssignableFrom(attrValueType))
+ if(attrValueType.isAssignableFrom(Number.class))
throw new IllegalArgumentException("ContinuousMapping
can be used for numerical attributes only.");
return new ContinuousMapping<K, V>(attributeName,
attrValueType, vp);
Modified: core3/vizmap-gui-api/trunk/pom.xml
===================================================================
--- core3/vizmap-gui-api/trunk/pom.xml 2010-11-18 02:05:10 UTC (rev 22897)
+++ core3/vizmap-gui-api/trunk/pom.xml 2010-11-18 02:23:18 UTC (rev 22898)
@@ -6,7 +6,7 @@
<parent>
<artifactId>parent</artifactId>
<groupId>org.cytoscape</groupId>
- <version>1.0-SNAPSHOT</version>
+ <version>3.0.0-alpha4-SNAPSHOT</version>
</parent>
<properties>
Modified:
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/EditorManager.java
===================================================================
---
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/EditorManager.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/EditorManager.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -129,52 +129,8 @@
PropertyEditor getMappingFunctionSelector();
- /**
- * DOCUMENT ME!
- *
- * @param type
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public PropertyEditor getDiscreteCellEditor(VisualProperty<?> type);
/**
- * DOCUMENT ME!
- *
- * @param type
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public TableCellRenderer getDiscreteCellRenderer(VisualProperty<?>
type);
-
- /**
- * DOCUMENT ME!
- *
- * @param type
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public PropertyEditor getContinuousCellEditor(VisualProperty<?> type);
-
- /**
- * DOCUMENT ME!
- *
- * @param type
- * DOCUMENT ME!
- * @param w
- * DOCUMENT ME!
- * @param h
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public TableCellRenderer getContinuousCellRenderer(VisualProperty<?>
type,
- int w, int h);
-
- /**
* DOCUMENT ME!
*
* @param editorName DOCUMENT ME!
Modified:
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/VisualPropertyEditor.java
===================================================================
---
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/VisualPropertyEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-api/trunk/src/main/java/org/cytoscape/view/vizmap/gui/editor/VisualPropertyEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -61,7 +61,7 @@
* @param parent
* @param type
*/
- Component getContinuousMappingEditor() throws IllegalArgumentException;
+ PropertyEditor getContinuousMappingEditor();
/**
* Returns Property Editor object for this data type.
@@ -93,7 +93,9 @@
*
* @return
*/
- TableCellRenderer getTableCellRenderer();
+ TableCellRenderer getDiscreteTableCellRenderer();
+
+ TableCellRenderer getContinuousTableCellRenderer();
/**
* This is for default view editor.
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertyBuilder.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -64,7 +64,6 @@
import com.l2fprod.common.propertysheet.PropertySheetPanel;
import com.l2fprod.common.propertysheet.PropertySheetTable;
-
/**
* Create property for the Property Sheet object.
*/
@@ -76,7 +75,7 @@
private DefaultTableCellRenderer filledBoxRenderer;
private EditorManager editorManager;
-
+
private CyNetworkManager cyNetworkManager;
private CyTableManager tableMgr;
@@ -99,9 +98,11 @@
public <K, V> VizMapperProperty<VisualProperty<V>, String,
VisualMappingFunctionFactory> buildProperty(
final VisualMappingFunction<K, V> visualMapping,
final String categoryName,
- final PropertySheetPanel propertySheetPanel, final
VisualMappingFunctionFactory factory) {
+ final PropertySheetPanel propertySheetPanel,
+ final VisualMappingFunctionFactory factory) {
- logger.debug("\n\n\nbuildProp called: Root VP = " +
categoryName);
+ logger.debug("\n\n\n************************* buildProp called:
Root VP = "
+ + categoryName);
// Mapping is empty
if (visualMapping == null)
@@ -113,18 +114,19 @@
throw new NullPointerException("PropertySheet is
null.");
final VisualProperty<V> vp = visualMapping.getVisualProperty();
- final VizMapperProperty<VisualProperty<V>, String,
VisualMappingFunctionFactory> topProperty
- = new VizMapperProperty<VisualProperty<V>, String,
VisualMappingFunctionFactory>(CellType.VISUAL_PROPERTY_TYPE, vp, String.class);
+ final VizMapperProperty<VisualProperty<V>, String,
VisualMappingFunctionFactory> topProperty = new
VizMapperProperty<VisualProperty<V>, String, VisualMappingFunctionFactory>(
+ CellType.VISUAL_PROPERTY_TYPE, vp,
String.class);
// Build Property object
topProperty.setCategory(categoryName);
topProperty.setDisplayName(vp.getDisplayName());
topProperty.setInternalValue(factory);
-
+
final String attrName = visualMapping.getMappingAttributeName();
- final VizMapperProperty<String, VisualMappingFunctionFactory,
VisualMappingFunction<K, V>> mappingHeader
- = new VizMapperProperty<String,
VisualMappingFunctionFactory, VisualMappingFunction<K,
V>>(CellType.MAPPING_TYPE, "Mapping Type", VisualMappingFunctionFactory.class);
-
+ final VizMapperProperty<String, VisualMappingFunctionFactory,
VisualMappingFunction<K, V>> mappingHeader = new VizMapperProperty<String,
VisualMappingFunctionFactory, VisualMappingFunction<K, V>>(
+ CellType.MAPPING_TYPE, "Mapping Type",
+ VisualMappingFunctionFactory.class);
+
if (attrName == null) {
topProperty.setValue("Select Attribute");
((PropertyRendererRegistry)
propertySheetPanel.getTable()
@@ -159,8 +161,12 @@
Iterator<? extends CyTableEntry> it = null;
((PropertyEditorRegistry) propertySheetPanel.getTable()
-
.getEditorFactory()).registerEditor(topProperty,
-
editorManager.getDataTableComboBoxEditor((Class<? extends CyTableEntry>)
vp.getTargetDataType()));
+ .getEditorFactory())
+ .registerEditor(
+ topProperty,
+ editorManager
+
.getDataTableComboBoxEditor((Class<? extends CyTableEntry>) vp
+
.getTargetDataType()));
if (vp.getTargetDataType().equals(CyNode.class)) {
it = targetNetwork.getNodeList().iterator();
} else if (vp.getTargetDataType().equals(CyEdge.class))
{
@@ -168,37 +174,43 @@
} else if
(vp.getTargetDataType().equals(CyNetwork.class)) {
it =
cyNetworkManager.getNetworkSet().iterator();
} else {
- throw new IllegalArgumentException("Data type
not supported: " + vp.getTargetDataType());
+ throw new IllegalArgumentException("Data type
not supported: "
+ + vp.getTargetDataType());
}
while (it.hasNext())
graphObjectSet.add(it.next());
}
- /*
- * Discrete Mapping
- */
+
+
+ final VisualPropertyEditor<V> vpEditor =
editorManager.getVisualPropertyEditor(vp);
+ logger.debug("vpEditor is " + vpEditor);
+
if (visualMapping instanceof DiscreteMapping && (attrName !=
null)) {
-
+
+ // Discrete Mapping
final SortedSet<K> attrSet = new TreeSet<K>();
for (CyTableEntry go : graphObjectSet) {
final Class<?> attrClass =
go.getCyRow().getDataTable()
.getColumnTypeMap().get(attrName);
Object id = go.getCyRow().get(attrName,
attrClass);
- if(id != null)
+ if (id != null)
attrSet.add((K) id);
}
// FIXME
setDiscreteProps(vp, visualMapping, attrSet,
-
editorManager.getVisualPropertyEditor(vp),
- topProperty, propertySheetPanel);
+ vpEditor, topProperty,
+ propertySheetPanel);
+
} else if (visualMapping instanceof ContinuousMapping
&& (attrName != null)) {
- final VizMapperProperty<String, String,
VisualMappingFunction<K, V>> graphicalView
- = new VizMapperProperty<String, String,
VisualMappingFunction<K, V>>(CellType.CONTINUOUS,
AbstractVizMapperPanel.GRAPHICAL_MAP_VIEW, String.class);
+ final VizMapperProperty<String, String,
VisualMappingFunction<K, V>> graphicalView = new VizMapperProperty<String,
String, VisualMappingFunction<K, V>>(
+ CellType.CONTINUOUS,
+
AbstractVizMapperPanel.GRAPHICAL_MAP_VIEW, String.class);
graphicalView.setValue(visualMapping);
graphicalView
.setDisplayName(AbstractVizMapperPanel.GRAPHICAL_MAP_VIEW);
@@ -206,12 +218,19 @@
topProperty.addSubProperty(graphicalView);
// FIXME
- // TableCellRenderer crenderer = editorFactory
- //
.getVisualPropertyEditor(vp).getContinuousMappingEditor();
- //
- // ((PropertyRendererRegistry)
propertySheetPanel.getTable()
- //
.getRendererFactory()).registerRenderer(graphicalView,
- // crenderer);
+ final TableCellRenderer continuousRenderer =
vpEditor.getContinuousTableCellRenderer();
+
+ final PropertySheetTable table =
propertySheetPanel.getTable();
+ ((PropertyRendererRegistry) table
+
.getRendererFactory()).registerRenderer(graphicalView,
+ continuousRenderer);
+
+ final PropertyEditorRegistry cellEditorFactory =
(PropertyEditorRegistry) table.getEditorFactory();
+ final PropertyEditor continuousCellEditor =
editorManager.getVisualPropertyEditor(vp).getContinuousMappingEditor();
+
+ if (continuousCellEditor != null)
+ cellEditorFactory.registerEditor(graphicalView,
continuousCellEditor);
+
} else if (visualMapping instanceof PassthroughMapping
&& (attrName != null)) {
@@ -235,8 +254,8 @@
else
stringVal = null;
- final VizMapperProperty<String, V,
VisualMappingFunction<K, V>> oneProperty
- = new VizMapperProperty<String, V,
VisualMappingFunction<K, V>>(CellType.DISCRETE, id, (Class<V>)
value.getClass());
+ final VizMapperProperty<String, V,
VisualMappingFunction<K, V>> oneProperty = new VizMapperProperty<String, V,
VisualMappingFunction<K, V>>(
+ CellType.DISCRETE, id,
(Class<V>) value.getClass());
oneProperty.setInternalValue(visualMapping);
oneProperty.setValue(stringVal);
@@ -250,7 +269,8 @@
}
} else {
- throw new IllegalArgumentException("Unsupported mapping
type: " + visualMapping);
+ throw new IllegalArgumentException("Unsupported mapping
type: "
+ + visualMapping);
}
propertySheetPanel.addProperty(0, topProperty);
@@ -262,28 +282,32 @@
* Set value, title, and renderer for each property in the category.
This
* list should be created against all available attribute values.
*/
- private <K, V> void setDiscreteProps(VisualProperty<V> vp,
VisualMappingFunction<K, V> mapping,
- SortedSet<K> attrSet,
+ private <K, V> void setDiscreteProps(VisualProperty<V> vp,
+ VisualMappingFunction<K, V> mapping, SortedSet<K>
attrSet,
VisualPropertyEditor<V> visualPropertyEditor,
DefaultProperty parent, PropertySheetPanel
propertySheetPanel) {
if (attrSet == null)
return;
final Map<K, V> discMapping = ((DiscreteMapping<K, V>) mapping)
- .getAll();
-
+ .getAll();
+
V val = null;
VizMapperProperty<K, V, VisualMappingFunction<K, V>> valProp;
String strVal;
final List<VizMapperProperty<K, V, VisualMappingFunction<K,
V>>> children = new ArrayList<VizMapperProperty<K, V, VisualMappingFunction<K,
V>>>();
final PropertySheetTable table = propertySheetPanel.getTable();
- final PropertyRendererRegistry cellRendererFactory =
(PropertyRendererRegistry) table.getRendererFactory();
- final PropertyEditorRegistry cellEditorFactory =
(PropertyEditorRegistry) table.getEditorFactory();
-
+ final PropertyRendererRegistry cellRendererFactory =
(PropertyRendererRegistry) table
+ .getRendererFactory();
+ final PropertyEditorRegistry cellEditorFactory =
(PropertyEditorRegistry) table
+ .getEditorFactory();
+
for (K key : attrSet) {
-
- valProp = new VizMapperProperty<K, V,
VisualMappingFunction<K, V>>(CellType.DISCRETE, key,
mapping.getVisualProperty().getType());
+
+ valProp = new VizMapperProperty<K, V,
VisualMappingFunction<K, V>>(
+ CellType.DISCRETE, key,
mapping.getVisualProperty()
+ .getType());
strVal = key.toString();
valProp.setDisplayName(strVal);
valProp.setParentProperty(parent);
@@ -296,12 +320,13 @@
children.add(valProp);
- final TableCellRenderer renderer =
editorManager.getDiscreteCellRenderer(vp);
- if(renderer != null)
+ final TableCellRenderer renderer =
editorManager.getVisualPropertyEditor(vp).getDiscreteTableCellRenderer();
+ if (renderer != null)
cellRendererFactory.registerRenderer(valProp,
renderer);
- final PropertyEditor cellEditor =
editorManager.getDiscreteCellEditor(vp);
- if(cellEditor != null)
+ final PropertyEditor cellEditor =
editorManager.getVisualPropertyEditor(vp).getPropertyEditor();
+
+ if (cellEditor != null)
cellEditorFactory.registerEditor(valProp,
cellEditor);
valProp.setValue(val);
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertySheetBuilder.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertySheetBuilder.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/VizMapPropertySheetBuilder.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -303,6 +303,7 @@
prop.setCategory(AbstractVizMapperPanel.CATEGORY_UNUSED);
prop.setDisplayName(type.getDisplayName());
prop.setValue("Double-Click to create...");
+ prop.setEditable(false);
propertySheetPanel.addProperty(prop);
propList.add(prop);
}
Added:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/ColorContinuousMappingCellRenderer.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/ColorContinuousMappingCellRenderer.java
(rev 0)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/cellrenderer/ColorContinuousMappingCellRenderer.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -0,0 +1,49 @@
+package org.cytoscape.view.vizmap.gui.internal.cellrenderer;
+
+import java.awt.Component;
+import java.awt.Paint;
+
+import javax.swing.JTable;
+
+import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
+
+import com.l2fprod.common.swing.renderer.DefaultCellRenderer;
+
+/**
+ * Cell renderer for Continuous Color mapping
+ *
+ */
+public class ColorContinuousMappingCellRenderer extends DefaultCellRenderer {
+
+ private static final long serialVersionUID = -6734053848878359286L;
+
+
+ public ColorContinuousMappingCellRenderer() {
+
+ }
+
+ @Override public Component getTableCellRendererComponent(JTable table,
Object value,
+ boolean isSelected, boolean hasFocus, int row, int
column) {
+
+ if(value == null || value instanceof ContinuousMapping ==
false) {
+ this.setText("!");
+ return this;
+ }
+
+ //ContinuousMapping<? extends Number, Paint> cm =
(ContinuousMapping<? extends Number, Paint>) value;
+
+ if (isSelected) {
+ setBackground(table.getSelectionBackground());
+ setForeground(table.getSelectionForeground());
+ } else {
+ setBackground(table.getBackground());
+ setForeground(table.getForeground());
+ }
+
+
+ this.setText("Map type = " + value.toString());
+
+ return this;
+ }
+
+}
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/AbstractVisualPropertyEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/AbstractVisualPropertyEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/AbstractVisualPropertyEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -63,10 +63,11 @@
protected final Class<T> type;
protected final PropertyEditor propertyEditor;
- protected Component continuousEditor;
+ protected PropertyEditor continuousEditor;
protected Window vpValueEditor;
- protected TableCellRenderer tableCellRenderer;
+ protected TableCellRenderer discreteTableCellRenderer;
+ protected TableCellRenderer continuousTableCellRenderer;
/**
* Creates a new AbstractVisualPropertyEditor object.
@@ -114,9 +115,13 @@
*
* @return DOCUMENT ME!
*/
- @Override public TableCellRenderer getTableCellRenderer() {
- return tableCellRenderer;
+ @Override public TableCellRenderer getDiscreteTableCellRenderer() {
+ return discreteTableCellRenderer;
}
+
+ @Override public TableCellRenderer getContinuousTableCellRenderer() {
+ return continuousTableCellRenderer;
+ }
/**
* DOCUMENT ME!
@@ -125,7 +130,7 @@
*
* @throws IllegalArgumentException DOCUMENT ME!
*/
- @Override public Component getContinuousMappingEditor() throws
IllegalArgumentException {
+ @Override public PropertyEditor getContinuousMappingEditor() throws
IllegalArgumentException {
return continuousEditor;
}
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -38,14 +38,15 @@
import java.awt.Paint;
import javax.swing.Icon;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellRenderer;
+import org.cytoscape.model.CyTableManager;
+import org.cytoscape.session.CyApplicationManager;
+import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
+import
org.cytoscape.view.vizmap.gui.internal.cellrenderer.ColorContinuousMappingCellRenderer;
+import
org.cytoscape.view.vizmap.gui.internal.editor.mappingeditor.GradientEditor;
import
org.cytoscape.view.vizmap.gui.internal.editor.propertyeditor.CyColorPropertyEditor;
-import com.l2fprod.common.propertysheet.PropertyRendererRegistry;
-
/**
* Manages editors for Color Visual Properties. This object can be used with
any
* VisualProperty using Color as its type.
@@ -57,33 +58,16 @@
/**
* Constructor. Should instantiate one editor per VisualProperty.
*/
- public ColorVisualPropertyEditor(final Class<Paint> type) {
+ public ColorVisualPropertyEditor(final Class<Paint> type, final
CyTableManager manager, final CyApplicationManager appManager, final
SelectedVisualStyleManager selectedManager) {
super(type, new CyColorPropertyEditor());
- tableCellRenderer = REG.getRenderer(Color.class);
- //FIXME
- //continuousEditor = new GradientEditorPanel(this.vp, null,
attr);
+ discreteTableCellRenderer = REG.getRenderer(Color.class);
+ continuousTableCellRenderer = new
ColorContinuousMappingCellRenderer();
+
+ continuousEditor = new GradientEditor(manager, appManager,
selectedManager);
}
- /**
- * DOCUMENT ME!
- *
- * @param type
- * DOCUMENT ME!
- * @param width
- * DOCUMENT ME!
- * @param height
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- @Override public TableCellRenderer getTableCellRenderer() {
- //FIXME
- //((JLabel)
tableCellRenderer).setIcon(GradientEditorPanel.getIcon(width, height, vp));
- return tableCellRenderer;
- }
-
/**
* DOCUMENT ME!
*
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DoubleVisualPropertyEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DoubleVisualPropertyEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/DoubleVisualPropertyEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -52,7 +52,7 @@
public DoubleVisualPropertyEditor(Class<Double> type,
final SelectedVisualStyleManager manager) {
super(type, new CyDoublePropertyEditor(null));
- tableCellRenderer = REG.getRenderer(Double.class);
+ discreteTableCellRenderer = REG.getRenderer(Double.class);
// continuousEditor = new C2CMappingEditor<Number,
Number>(this.vp,
// manager, attr);
}
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/EditorManagerImpl.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -228,7 +228,7 @@
@SuppressWarnings("unchecked")
public <V> VisualPropertyEditor<V> getVisualPropertyEditor(
final VisualProperty<V> vp) {
- return (VisualPropertyEditor<V>) editors.get(vp);
+ return (VisualPropertyEditor<V>) editors.get(vp.getType());
}
/*
@@ -247,25 +247,6 @@
}
- @Override public PropertyEditor getDiscreteCellEditor(VisualProperty<?>
type) {
- VisualPropertyEditor<?> editor = editors.get(type.getType());
- if (editor == null)
- return null;
-
- return editor.getPropertyEditor();
- }
-
- @Override
- public TableCellRenderer getDiscreteCellRenderer(
- final VisualProperty<?> type) {
-
- final VisualPropertyEditor<?> editor =
editors.get(type.getType());
- if(editor == null)
- return null;
- else
- return editor.getTableCellRenderer();
- }
-
/*
* (non-Javadoc)
*
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/BelowAndAbovePanel.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/BelowAndAbovePanel.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/BelowAndAbovePanel.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -74,7 +74,7 @@
private EditorManager editorManager;
- private final SelectedVisualStyleManager manager;
+ private final ContinuousMapping<?, ?> mapping;
/**
* DOCUMENT ME!
@@ -90,11 +90,11 @@
* @param below
* DOCUMENT ME!
*/
- public BelowAndAbovePanel(VisualProperty<?> type, Color color, boolean
below, final SelectedVisualStyleManager manager) {
+ public BelowAndAbovePanel(Color color, boolean below, final
ContinuousMapping<?, ?> mapping) {
this.boxColor = color;
this.below = below;
- this.type = type;
- this.manager = manager;
+ this.mapping = mapping;
+ this.type = mapping.getVisualProperty();
if (below)
this.setToolTipText("Double-click triangle to set below
color...");
@@ -110,8 +110,8 @@
* @param type DOCUMENT ME!
* @param below DOCUMENT ME!
*/
- public BelowAndAbovePanel(VisualProperty<Number> type, boolean below,
final SelectedVisualStyleManager manager) {
- this(type, Color.DARK_GRAY, below, manager);
+ public BelowAndAbovePanel(boolean below, ContinuousMapping<?, ?>
mapping) {
+ this(Color.DARK_GRAY, below, mapping);
}
/**
@@ -194,26 +194,26 @@
return;
}
- final VisualStyle vs =
manager.getCurrentVisualStyle();
- final ContinuousMapping<?, ?> cMapping =
(ContinuousMapping<?,?>) vs.getVisualMappingFunction(type);
+
+
BoundaryRangeValues brv;
BoundaryRangeValues original;
if (below) {
- original =
cMapping.getPoint(0).getRange();
+ original =
mapping.getPoint(0).getRange();
brv = new BoundaryRangeValues(newValue,
original.equalValue,
original.greaterValue);
- cMapping.getPoint(0).setRange(brv);
+ mapping.getPoint(0).setRange(brv);
} else {
- original =
cMapping.getPoint(cMapping.getPointCount() - 1).getRange();
+ original =
mapping.getPoint(mapping.getPointCount() - 1).getRange();
brv = new
BoundaryRangeValues(original.lesserValue, original.equalValue,
newValue);
-
cMapping.getPoint(cMapping.getPointCount() - 1).setRange(brv);
+
mapping.getPoint(mapping.getPointCount() - 1).setRange(brv);
}
- //cMapping.fireStateChanged();
+ //mapping.fireStateChanged();
// Update view.
//Cytoscape.redrawGraph(vmm.getNetworkView());
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2CMappingEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2CMappingEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2CMappingEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -43,9 +43,11 @@
import org.cytoscape.model.CyTable;
import org.cytoscape.model.CyTableManager;
import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.vizmap.VisualStyle;
import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
import org.cytoscape.view.vizmap.gui.VizMapGUI;
import org.cytoscape.view.vizmap.mappings.BoundaryRangeValues;
+import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
import org.cytoscape.view.vizmap.mappings.ContinuousMappingPoint;
import org.jdesktop.swingx.multislider.TrackRenderer;
@@ -78,8 +80,8 @@
* @param type
* DOCUMENT ME!
*/
- public C2CMappingEditor(VisualProperty<V> type, final
SelectedVisualStyleManager manager, final CyTable attr) {
- super(type, manager, attr);
+ public C2CMappingEditor(final VisualStyle style, final
ContinuousMapping<K, V> mapping, final CyTable attr) {
+ super(style, mapping, attr);
abovePanel.setVisible(false);
belowPanel.setVisible(false);
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2DMappingEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2DMappingEditor.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/C2DMappingEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -45,10 +45,12 @@
import org.cytoscape.model.CyTable;
import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.vizmap.VisualStyle;
import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
import org.cytoscape.view.vizmap.gui.VizMapGUI;
import org.cytoscape.view.vizmap.gui.editor.EditorManager;
import org.cytoscape.view.vizmap.mappings.BoundaryRangeValues;
+import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
import org.cytoscape.view.vizmap.mappings.ContinuousMappingPoint;
import org.jdesktop.swingx.multislider.Thumb;
@@ -71,13 +73,11 @@
private EditorManager editorFactory;
- public C2DMappingEditor(VisualProperty<V> type,
- EditorManager editorFactory, final
SelectedVisualStyleManager manager, CyTable attr) {
- super(type, manager, attr);
+ public C2DMappingEditor(final VisualStyle style, final
ContinuousMapping<K, V> mapping, CyTable attr) {
+ super(style, mapping, attr);
this.iconPanel.setVisible(false);
this.belowPanel.setVisible(false);
this.abovePanel.setVisible(false);
- this.editorFactory = editorFactory;
//FIXME
//setSlider();
}
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/ContinuousMappingEditorPanel.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/ContinuousMappingEditorPanel.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/ContinuousMappingEditorPanel.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -49,9 +49,8 @@
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.CyTable;
import org.cytoscape.view.model.VisualProperty;
-import org.cytoscape.view.vizmap.VisualMappingFunction;
import org.cytoscape.view.vizmap.VisualMappingManager;
-import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
+import org.cytoscape.view.vizmap.VisualStyle;
import org.cytoscape.view.vizmap.mappings.BoundaryRangeValues;
import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
import org.cytoscape.view.vizmap.mappings.ContinuousMappingPoint;
@@ -66,26 +65,19 @@
* @param T
* type of the value associated with the thumb.
*
- *
- * @version 0.5
- * @since Cytoscape 2.5
- * @author kono
*/
public abstract class ContinuousMappingEditorPanel<K, V> extends JPanel
implements
PropertyChangeListener {
private static final long serialVersionUID = 2077889066171872186L;
- /*
- * Used by track renderers.
- */
protected static final String BELOW_VALUE_CHANGED =
"BELOW_VALUE_CHANGED";
protected static final String ABOVE_VALUE_CHANGED =
"ABOVE_VALUE_CHANGED";
- // Continuous mapping only accepts numerical attributes.
- protected VisualProperty<V> type;
-
// Only accepts Continuous Mapping
- protected ContinuousMapping<K, V> mapping;
+ protected final ContinuousMapping<K, V> mapping;
+ protected final VisualProperty<V> type;
+ private final CyTable attr;
+
protected List<ContinuousMappingPoint<K, V>> allPoints;
private SpinnerNumberModel spinnerModel;
@@ -98,24 +90,31 @@
protected VisualMappingManager vmm;
// This should be injected.
- protected EditorValueRangeTracer tracer;
-
- protected final SelectedVisualStyleManager manager;
+ private final EditorValueRangeTracer tracer;
- private final CyTable attrs;
-
/**
*
* Creates new form ContinuousMapperEditorPanel Accepts only one visual
* property type T.
*
* */
- public ContinuousMappingEditorPanel(final VisualProperty<V> type,
- final SelectedVisualStyleManager manager, final CyTable
attrs) {
- this.type = type;
- this.manager = manager;
- this.attrs = attrs;
-
+ public ContinuousMappingEditorPanel(final VisualStyle style, final
ContinuousMapping<K, V> mapping, final CyTable attr) {
+ if(mapping == null)
+ throw new NullPointerException("ContinuousMapping
should not be null.");
+ if(attr == null)
+ throw new NullPointerException("Data table should not
be null.");
+
+ this.tracer = new
EditorValueRangeTracer(style.getVisualLexicon());
+ this.mapping = mapping;
+ this.type = mapping.getVisualProperty();
+
+ final String controllingAttrName =
mapping.getMappingAttributeName();
+ final Class<?> attrType =
attr.getColumnTypeMap().get(controllingAttrName);
+ if (attrType != Double.class)
+ throw new IllegalArgumentException("Cannot support
attribute data type: " + attrType);
+
+ this.attr = attr;
+
initComponents();
setVisualPropLabel();
@@ -157,12 +156,12 @@
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
- JPanel mainPanel = new JPanel();
+
+ final JPanel mainPanel = new JPanel();
- abovePanel = new BelowAndAbovePanel(type, Color.yellow, false,
- manager);
+ abovePanel = new BelowAndAbovePanel(Color.yellow, false,
mapping);
abovePanel.setName("abovePanel");
- belowPanel = new BelowAndAbovePanel(type, Color.white, true,
manager);
+ belowPanel = new BelowAndAbovePanel(Color.white, true, mapping);
belowPanel.setName("belowPanel");
abovePanel.setPreferredSize(new Dimension(16, 1));
@@ -374,28 +373,12 @@
private void initRangeValues() {
- VisualMappingFunction<?, V> map =
manager.getCurrentVisualStyle()
- .getVisualMappingFunction(type);
-
- if (map == null || map instanceof ContinuousMapping == false)
- return;
-
- // TODO: fix the following section
- // Assume this calc only returns cont. mapping.
- mapping = (ContinuousMapping<K, V>) map;
-
- final String controllingAttrName =
mapping.getMappingAttributeName();
-
- if (attrs.getColumnTypeMap().get(controllingAttrName) !=
Double.class)
- return;
-
// Set range values
if (tracer.getRange(type) == 0) {
Double maxValue = Double.NEGATIVE_INFINITY;
Double minValue = Double.POSITIVE_INFINITY;
-
- for (Double val :
attrs.getColumnValues(controllingAttrName,
- Double.class)) {
+ final List<Double> valueList =
attr.getColumnValues(mapping.getMappingAttributeName(), Double.class);
+ for (Double val : valueList) {
if (val > maxValue)
maxValue = val;
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/EditorValueRangeTracer.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/EditorValueRangeTracer.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/EditorValueRangeTracer.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -44,6 +44,7 @@
*
*/
public class EditorValueRangeTracer {
+
private Map<VisualProperty<?>, Range> rangeMap;
/**
Added:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditor.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditor.java
(rev 0)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditor.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -0,0 +1,59 @@
+package org.cytoscape.view.vizmap.gui.internal.editor.mappingeditor;
+
+import java.awt.Color;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+
+import javax.swing.JDialog;
+import javax.swing.JPanel;
+
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.model.CyTableManager;
+import org.cytoscape.session.CyApplicationManager;
+import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
+import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
+
+import com.l2fprod.common.beans.editor.AbstractPropertyEditor;
+
+public class GradientEditor extends AbstractPropertyEditor {
+
+
+
+ private ContinuousMapping<Double, Color> mapping;
+
+
+ public GradientEditor(final CyTableManager manager, final
CyApplicationManager appManager, final SelectedVisualStyleManager
selectedManager) {
+
+ editor = new JPanel();
+ this.editor.addMouseListener(new MouseAdapter() {
+
+ @Override
+ public void mouseClicked(MouseEvent arg0) {
+ final CyTable attr =
manager.getTableMap(mapping.getVisualProperty().getTargetDataType(),
appManager.getCurrentNetwork()).get(CyNetwork.DEFAULT_ATTRS);
+ GradientEditorPanel editorPanel = new
GradientEditorPanel(selectedManager.getCurrentVisualStyle(), mapping, attr);
+ JDialog editorDialog = new JDialog();
+ editorDialog.add(editorPanel);
+ editorDialog.pack();
+
+ editorDialog.setTitle("Discrete Mapping Editor:
Mapping for " + mapping.getVisualProperty().getDisplayName());
+ editorDialog.setLocationRelativeTo(editor);
+ editorDialog.setVisible(true);
+ }
+ });
+ }
+
+
+ @Override public Object getValue() {
+ return mapping;
+ }
+
+
+ @Override public void setValue(Object value) {
+ if(value instanceof ContinuousMapping == false)
+ throw new IllegalArgumentException("Value should be
ContinuousMapping: this is " + value);
+
+ mapping = (ContinuousMapping<Double, Color>) value;
+ }
+
+}
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditorPanel.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditorPanel.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/mappingeditor/GradientEditorPanel.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -49,6 +49,7 @@
import org.cytoscape.model.CyTable;
import org.cytoscape.model.CyTableManager;
import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.vizmap.VisualStyle;
import org.cytoscape.view.vizmap.gui.SelectedVisualStyleManager;
import org.cytoscape.view.vizmap.gui.VizMapGUI;
import org.cytoscape.view.vizmap.gui.editor.EditorManager;
@@ -65,7 +66,7 @@
* @since Cytoscpae 2.5
* @author kono
*/
-public class GradientEditorPanel<K> extends ContinuousMappingEditorPanel<K,
Color>
+public class GradientEditorPanel extends ContinuousMappingEditorPanel<Double,
Color>
implements PropertyChangeListener {
private final static long serialVersionUID = 1202339877433771L;
@@ -81,8 +82,9 @@
* @param type
* DOCUMENT ME!
*/
- public GradientEditorPanel(VisualProperty<Color> type, final
SelectedVisualStyleManager manager, CyTable attr) {
- super(type, manager, attr);
+ public GradientEditorPanel(final VisualStyle style, final
ContinuousMapping<Double, Color> mapping, final CyTable attr) {
+ super(style, mapping, attr);
+
iconPanel.setVisible(false);
initSlider();
@@ -106,8 +108,7 @@
* @return DOCUMENT ME!
*/
public ImageIcon getLegend(final int width, final int height) {
- final CyGradientTrackRenderer rend = (CyGradientTrackRenderer)
slider
-
.getTrackRenderer();
+ final CyGradientTrackRenderer rend = (CyGradientTrackRenderer)
slider.getTrackRenderer();
rend.getRendererComponent(slider);
return rend.getLegend(width, height);
Modified:
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/event/CellEditorEventHandler.java
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/event/CellEditorEventHandler.java
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/java/org/cytoscape/view/vizmap/gui/internal/event/CellEditorEventHandler.java
2010-11-18 02:23:18 UTC (rev 22898)
@@ -589,23 +589,24 @@
final VisualMappingFunctionFactory factory,
final String controllingAttrName) {
+ // This is the currently selected Visual Style.
final VisualStyle style = manager.getCurrentVisualStyle();
logger.debug("Mapping combo box clicked: " + style.getTitle());
logger.debug("Mapping Category: " + prop.getCategory());
-
-
final VisualProperty<Visualizable> startVP =
util.getCategory((Class<? extends CyTableEntry>) vp.getTargetDataType());
-
final VisualMappingFunction<?, ?> currentMapping =
style.getVisualMappingFunction(vp);
logger.debug("Current Mapping for " + vp.getDisplayName() + "
is: " + currentMapping);
final VisualMappingFunction<?, ?> newMapping;
- if(currentMapping == null) {
-
+ logger.debug("!! New factory Category: " +
factory.getMappingFunctionType());
+ logger.debug("!! Current Mapping type: " + currentMapping);
+
+ if(currentMapping == null || currentMapping.getClass() !=
factory.getMappingFunctionType()) {
+ // Mapping does not exist.
final AttributeSet attrSet =
attrManager.getAttributeSet(applicationManager.getCurrentNetwork(), (Class<?
extends CyTableEntry>) vp.getTargetDataType());
final Class<?> attributeDataType =
attrSet.getAttrMap().get(controllingAttrName);
newMapping =
factory.createVisualMappingFunction(controllingAttrName, attributeDataType,vp);
@@ -625,7 +626,6 @@
propertySheetPanel.removeProperty(parent);
final VizMapperProperty<?, ?, VisualMappingFunctionFactory>
newRootProp;
-
newRootProp = vizMapPropertySheetBuilder.getPropertyBuilder()
.buildProperty(newMapping,
startVP.getDisplayName(),
Modified:
core3/vizmap-gui-impl/trunk/src/main/resources/META-INF/spring/bundle-context-vizmapper.xml
===================================================================
---
core3/vizmap-gui-impl/trunk/src/main/resources/META-INF/spring/bundle-context-vizmapper.xml
2010-11-18 02:05:10 UTC (rev 22897)
+++
core3/vizmap-gui-impl/trunk/src/main/resources/META-INF/spring/bundle-context-vizmapper.xml
2010-11-18 02:23:18 UTC (rev 22898)
@@ -133,6 +133,9 @@
<bean id="colorPropertyEditor"
class="org.cytoscape.view.vizmap.gui.internal.editor.ColorVisualPropertyEditor">
<constructor-arg ref="paintClass" />
+ <constructor-arg ref="cyTableManagerServiceRef" />
+ <constructor-arg ref="cyApplicationManagerServiceRef" />
+ <constructor-arg ref="selectedVisualStyleManager" />
</bean>
<bean id="doublePropertyEditor"
class="org.cytoscape.view.vizmap.gui.internal.editor.DoubleVisualPropertyEditor">
@@ -140,9 +143,6 @@
<constructor-arg ref="selectedVisualStyleManager" />
</bean>
-
-
-
<!-- Main Panel Configurations -->
<bean id="colorMgr"
class="org.cytoscape.view.vizmap.gui.internal.theme.ColorManager"
--
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.