Author: kono
Date: 2012-06-27 15:41:32 -0700 (Wed, 27 Jun 2012)
New Revision: 29710
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/editor/ColorVisualPropertyEditor.java
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/propertyeditor/CyColorPropertyEditor.java
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/valueeditor/CyColorChooser.java
Log:
fixes #1174 (Probably) fixed this race condition. Constructor will be called
in EDT.
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-27 21:16:50 UTC (rev 29709)
+++
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/CyActivator.java
2012-06-27 22:41:32 UTC (rev 29710)
@@ -34,6 +34,7 @@
import org.cytoscape.view.vizmap.gui.internal.editor.EditorManagerImpl;
import
org.cytoscape.view.vizmap.gui.internal.editor.NumberVisualPropertyEditor;
import
org.cytoscape.view.vizmap.gui.internal.editor.StringVisualPropertyEditor;
+import
org.cytoscape.view.vizmap.gui.internal.editor.propertyeditor.CyColorPropertyEditor;
import
org.cytoscape.view.vizmap.gui.internal.editor.propertyeditor.CyComboBoxPropertyEditor;
import
org.cytoscape.view.vizmap.gui.internal.editor.valueeditor.BooleanValueEditor;
import
org.cytoscape.view.vizmap.gui.internal.editor.valueeditor.CyColorChooser;
@@ -97,6 +98,8 @@
PropertySheetPanel propertySheetPanel = new
PropertySheetPanel();
CyColorChooser colorEditor = new CyColorChooser();
+ CyColorPropertyEditor cyColorPropertyEditor = new
CyColorPropertyEditor(colorEditor);
+
FontEditor fontEditor = new FontEditor();
NumericValueEditor<Double> doubleValueEditor = new
NumericValueEditor<Double>(Double.class);
NumericValueEditor<Integer> integerValueEditor = new
NumericValueEditor<Integer>(Integer.class);
@@ -104,7 +107,7 @@
StringValueEditor stringValueEditor = new StringValueEditor();
BooleanValueEditor booleanValueEditor = new
BooleanValueEditor();
- ColorVisualPropertyEditor colorPropertyEditor = new
ColorVisualPropertyEditor(Paint.class,cyNetworkTableManagerServiceRef,cyApplicationManagerServiceRef,editorManager,vmmServiceRef);
+ ColorVisualPropertyEditor colorPropertyEditor = new
ColorVisualPropertyEditor(Paint.class,cyNetworkTableManagerServiceRef,cyApplicationManagerServiceRef,editorManager,vmmServiceRef,
cyColorPropertyEditor);
NumberVisualPropertyEditor doublePropertyEditor = new
NumberVisualPropertyEditor(Double.class,cyNetworkTableManagerServiceRef,cyApplicationManagerServiceRef,editorManager,vmmServiceRef);
NumberVisualPropertyEditor integerPropertyEditor = new
NumberVisualPropertyEditor(Integer.class,cyNetworkTableManagerServiceRef,cyApplicationManagerServiceRef,editorManager,vmmServiceRef);
NumberVisualPropertyEditor floatPropertyEditor = new
NumberVisualPropertyEditor(Float.class,cyNetworkTableManagerServiceRef,cyApplicationManagerServiceRef,editorManager,vmmServiceRef);
Modified:
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
===================================================================
---
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
2012-06-27 21:16:50 UTC (rev 29709)
+++
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/ColorVisualPropertyEditor.java
2012-06-27 22:41:32 UTC (rev 29710)
@@ -55,15 +55,9 @@
* Constructor. Should instantiate one editor per VisualProperty.
*/
public ColorVisualPropertyEditor(final Class<Paint> type, final
CyNetworkTableManager manager,
- final CyApplicationManager appManager, final
EditorManager editorManager, final VisualMappingManager vmm) {
- super(type, new CyColorPropertyEditor(),
ContinuousEditorType.COLOR);
+ final CyApplicationManager appManager, final
EditorManager editorManager, final VisualMappingManager vmm, final
CyColorPropertyEditor colorPropEditor) {
+ super(type, colorPropEditor, ContinuousEditorType.COLOR);
this.discreteTableCellRenderer = REG.getRenderer(Color.class);
-
- // this.continuousEditor = new GradientEditor(manager,
appManager,
- // selectedManager, editorManager, vmm);
- // this.continuousTableCellRenderer = new
- //
ContinuousMappingCellRenderer((AbstractContinuousMappingEditor<?, ?>)
- // continuousEditor);
}
-}
+}
\ No newline at end of file
Modified:
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/propertyeditor/CyColorPropertyEditor.java
===================================================================
---
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/propertyeditor/CyColorPropertyEditor.java
2012-06-27 21:16:50 UTC (rev 29709)
+++
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/propertyeditor/CyColorPropertyEditor.java
2012-06-27 22:41:32 UTC (rev 29710)
@@ -41,6 +41,7 @@
import javax.swing.JButton;
import javax.swing.JPanel;
+import javax.swing.SwingUtilities;
import org.cytoscape.view.vizmap.gui.internal.cellrenderer.CyColorCellRenderer;
import
org.cytoscape.view.vizmap.gui.internal.editor.valueeditor.CyColorChooser;
@@ -63,31 +64,39 @@
private JButton button;
private Color color;
- private CyColorChooser chooser;
+ private final CyColorChooser chooser;
/**
* Creates a new CyColorPropertyEditor object.
*/
- public CyColorPropertyEditor() {
+ public CyColorPropertyEditor(final CyColorChooser chooser) {
color = Color.white;
- chooser = new CyColorChooser();
- editor = new JPanel(new PercentLayout(PercentLayout.HORIZONTAL,
0));
- ((JPanel) editor).add("*", label = new CyColorCellRenderer());
- label.setOpaque(false);
- ((JPanel) editor).add(button =
ComponentFactory.Helper.getFactory().createMiniButton());
- button.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- selectColor();
+ this.chooser = chooser;
+
+ SwingUtilities.invokeLater(new Runnable() {
+
+ @Override
+ public void run() {
+ editor = new JPanel(new
PercentLayout(PercentLayout.HORIZONTAL, 0));
+ ((JPanel) editor).add("*", label = new
CyColorCellRenderer());
+ label.setOpaque(false);
+ ((JPanel) editor).add(button =
ComponentFactory.Helper.getFactory().createMiniButton());
+ button.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent
e) {
+ selectColor();
+ }
+ });
+ ((JPanel) editor).add(button =
ComponentFactory.Helper.getFactory().createMiniButton());
+ button.setText("X");
+ button.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent
e) {
+ selectNull();
+ }
+ });
+ ((JPanel) editor).setOpaque(false);
}
});
- ((JPanel) editor).add(button =
ComponentFactory.Helper.getFactory().createMiniButton());
- button.setText("X");
- button.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- selectNull();
- }
- });
- ((JPanel) editor).setOpaque(false);
+
}
@Override
@@ -101,7 +110,7 @@
label.setValue(color);
}
- protected void selectColor() {
+ private void selectColor() {
ResourceManager rm =
ResourceManager.all(FilePropertyEditor.class);
String title = rm.getString("ColorPropertyEditor.title");
Paint selectedColor = chooser.showEditor(editor, color);
Modified:
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/valueeditor/CyColorChooser.java
===================================================================
---
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/valueeditor/CyColorChooser.java
2012-06-27 21:16:50 UTC (rev 29709)
+++
core3/impl/trunk/vizmap-gui-impl/src/main/java/org/cytoscape/view/vizmap/gui/internal/editor/valueeditor/CyColorChooser.java
2012-06-27 22:41:32 UTC (rev 29710)
@@ -52,17 +52,16 @@
* remembers recently used colors between invocations of the chooser dialog.
*/
public class CyColorChooser implements ValueEditor<Paint> {
-
+
protected JColorChooser chooser = new JColorChooser();
protected ColorListener listener = new ColorListener();
protected Paint color = Color.white;
+ @Override
+ public Paint showEditor(Component parent, Paint initialValue) {
- @Override public Paint showEditor(Component parent, Paint initialValue)
{
-
color = initialValue;
- JDialog dialog = JColorChooser.createDialog(parent,
- "Please pick a color", true, chooser, listener,
null);
+ JDialog dialog = JColorChooser.createDialog(parent, "Please
pick a color", true, chooser, listener, null);
dialog.setVisible(true);
return color;
--
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.