Author: mmichaud
Date: 2009-04-15 07:53:29 -0700 (Wed, 15 Apr 2009)
New Revision: 16581
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/.project
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/command/proxy.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/AbstractGuiHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BooleanHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedDoubleHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedFloatHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedIntegerHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedLongHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/DoubleHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FileHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FloatHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/GuiTunableInterceptor.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/Guihandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/InputStreamHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/IntegerHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListMultipleHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListSingleHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/LongHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/StringHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/URLHandler.java
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/util/XorPanel.java
Log:
Need to implement the resetValue() method for each type of tunable
Modified: csplugins/trunk/pasteur/mathieu/tunables2/.project
===================================================================
--- csplugins/trunk/pasteur/mathieu/tunables2/.project 2009-04-15 02:45:27 UTC
(rev 16580)
+++ csplugins/trunk/pasteur/mathieu/tunables2/.project 2009-04-15 14:53:29 UTC
(rev 16581)
@@ -1,23 +1,29 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>tunables2</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>tunables2</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+
<name>org.eclipse.wst.common.project.facet.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.maven.ide.eclipse.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+ </natures>
+</projectDescription>
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/command/proxy.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/command/proxy.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/command/proxy.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -22,12 +22,8 @@
//full test on each tunable defined in the class!!!!
public String validate(){
- String ret = null;
-// if(param.equals("hostname")){
-// System.out.println("test for " + param);
- if(!type.getSelectedValue().equals("direct"))
- if(!hostname.contains("cache"))ret=new String("There is
a Problem");
-// }
- return ret;
+ if(!type.getSelectedValue().equals("direct") &&
!hostname.contains("cache"))
+ return new String("There is a Problem");
+ else return null;
}
}
\ No newline at end of file
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/AbstractGuiHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/AbstractGuiHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/AbstractGuiHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -1,153 +1,160 @@
-
-package org.cytoscape.work;
-
-import java.awt.Component;
-import java.awt.Container;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.lang.reflect.Field;
-import java.util.LinkedList;
-import java.util.List;
-
-import javax.swing.JPanel;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-
-import org.cytoscape.work.internal.gui.*;
-
-
-public abstract class AbstractGuiHandler extends AbstractHandler implements
Guihandler, ActionListener,ChangeListener,ListSelectionListener {
-
- protected JPanel panel;
-
- private String depName;
- private String depState;
-
- private String depUnState;
-
- private List<Guihandler> deps;
-
- public AbstractGuiHandler(Field f, Object o, Tunable t) {
- super(f,o,t);
- String s = t.dependsOn();
- if ( !s.equals("") ) {
- if(!s.contains("!=")){
- depName = s.substring(0,s.indexOf("="));
- depState = s.substring(s.indexOf("=") + 1);
- depUnState = "";
- }
- else {
- depName = s.substring(0,s.indexOf("!"));
- depUnState = s.substring(s.indexOf("=")+1);
- depState = "";
- }
- }
-
- deps = new LinkedList<Guihandler>();
- panel = new JPanel();
- }
-
- public void actionPerformed(ActionEvent ae) {
- //System.out.println(this.getName() + " actionPerformed");
- notifyDependents();
- handle();
- }
-
- public void stateChanged(ChangeEvent e){
- //handle();
- notifyDependents();
- }
-
- public void valueChanged(ListSelectionEvent le) {
- boolean ok = le.getValueIsAdjusting();
- if(!ok){
- //handle();
- notifyDependents();
- }
- }
-
-
- // notify dependencies that this object is changing
- public void notifyDependents() {
- String state = getState();
- String name = getName();
- for ( Guihandler gh : deps )
- gh.checkDependency( name, state );
- }
-
- // add a dependency on this object
- public void addDependent(Guihandler gh) {
- //System.out.println("adding " + gh.getName() + " dependent to
" + this.getName() );
- if ( !deps.contains(gh) )
- deps.add(gh);
- }
-
- public String getDependency() {
- return depName;
- }
-
- public void checkDependency(String name, String state) {
-
- // if we don't depend on anything, then we should be enabled
- if ( depName == null || depState == null ) {
- setEnabledContainer(true,panel);
- return;
- }
-
- // if the dependency name matches ...
- if ( depName.equals(name) ) {
- // ... and the state matches, then enable
- if(depState!=""){
- if ( depState.equals(state) ){
- setEnabledContainer(true,panel);
- handle();}
- // ... and the state doesn't match, then disable
- else{
- setEnabledContainer(false,panel);
- }
- }
- else {
- if ( !depUnState.equals(state) ){
- setEnabledContainer(true,panel);
- handle();
- }
- // ... and the state doesn't match, then disable
- else{
- setEnabledContainer(false,panel);
- }
- }
- }
-
- return;
- }
-
- private void setEnabledContainer(boolean enable, Container c) {
- c.setEnabled(enable);
- for ( Component child : c.getComponents() ) {
- if ( child instanceof Container )
- setEnabledContainer(enable,(Container)child);
- else
- child.setEnabled(enable);
- }
- }
-
- public String getName() {
- if ( f != null ) {
- return f.getName();
- } else if ( m != null ) {
- return m.getName();
- } else
- return "";
- }
-
- public JPanel getJPanel() {
- return panel;
- }
-
- public abstract void handle();
-
- public abstract String getState();
-
-}
+package org.cytoscape.work;
+
+import java.awt.Component;
+import java.awt.Container;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.lang.reflect.Field;
+import java.util.LinkedList;
+import java.util.List;
+
+import javax.swing.JPanel;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+
+import org.cytoscape.work.AbstractHandler;
+import org.cytoscape.work.Tunable;
+import org.cytoscape.work.internal.gui.Guihandler;
+
+
+
+public abstract class AbstractGuiHandler extends AbstractHandler implements
Guihandler, ActionListener,ChangeListener,ListSelectionListener {
+
+ protected JPanel panel;
+
+ private String depName;
+ private String depState;
+
+ private String depUnState;
+
+ private List<Guihandler> deps;
+
+ protected AbstractGuiHandler(Field f, Object o, Tunable t) {
+ super(f,o,t);
+ String s = t.dependsOn();
+ if ( !s.equals("") ) {
+ if(!s.contains("!=")){
+ depName = s.substring(0,s.indexOf("="));
+ depState = s.substring(s.indexOf("=") + 1);
+ depUnState = "";
+ }
+ else {
+ depName = s.substring(0,s.indexOf("!"));
+ depUnState = s.substring(s.indexOf("=")+1);
+ depState = "";
+ }
+ }
+
+ deps = new LinkedList<Guihandler>();
+ panel = new JPanel();
+ }
+
+ public void actionPerformed(ActionEvent ae) {
+// handle();
+ notifyDependents();
+ }
+
+ public void stateChanged(ChangeEvent e){
+// handle();
+ notifyDependents();
+ }
+
+ public void valueChanged(ListSelectionEvent le) {
+ boolean ok = le.getValueIsAdjusting();
+ if(!ok){
+// handle();
+ notifyDependents();
+ }
+ }
+
+
+ // notify dependencies that this object is changing
+ public void notifyDependents() {
+ String state = getState();
+ String name = getName();
+ for ( Guihandler gh : deps )
+ gh.checkDependency( name, state );
+ }
+
+ // add a dependency on this object
+ public void addDependent(Guihandler gh) {
+ //System.out.println("adding " + gh.getName() + " dependent to
" + this.getName() );
+ if ( !deps.contains(gh) )
+ deps.add(gh);
+ }
+
+ public String getDependency() {
+ return depName;
+ }
+
+ public void handleDependents(){
+ if(panel.isEnabled())handle();
+ }
+
+ public void checkDependency(String name, String state) {
+ // if we don't depend on anything, then we should be enabled
+ if ( depName == null || depState == null ) {
+ setEnabledContainer(true,panel);
+// handle();
+ return;
+ }
+
+ // if the dependency name matches ...
+ if ( depName.equals(name) ) {
+ // ... and the state matches, then enable
+ if(depState!=""){
+ if ( depState.equals(state) ){
+ setEnabledContainer(true,panel);
+// handle();
+ }
+ // ... and the state doesn't match, then disable
+ else{
+ setEnabledContainer(false,panel);
+ }
+ }
+ else {
+ if ( !depUnState.equals(state) ){
+ setEnabledContainer(true,panel);
+// handle();
+ }
+ // ... and the state doesn't match, then disable
+ else{
+ setEnabledContainer(false,panel);
+ }
+ }
+ }
+
+ return;
+ }
+
+ private void setEnabledContainer(boolean enable, Container c) {
+ c.setEnabled(enable);
+ for ( Component child : c.getComponents() ) {
+ if ( child instanceof Container )
+ setEnabledContainer(enable,(Container)child);
+ else
+ child.setEnabled(enable);
+ }
+ }
+
+ public String getName() {
+ if ( f != null ) {
+ return f.getName();
+ } else if ( m != null ) {
+ return m.getName();
+ } else
+ return "";
+ }
+
+ public JPanel getJPanel() {
+ return panel;
+ }
+
+ public abstract void handle();
+
+ public abstract void resetValue();
+
+ public abstract String getState();
+}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BooleanHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BooleanHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BooleanHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -54,4 +54,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedDoubleHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedDoubleHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedDoubleHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -68,4 +68,11 @@
return myBounded.getValue().toString();
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
+
}
\ No newline at end of file
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedFloatHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedFloatHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedFloatHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -67,4 +67,10 @@
public String getState() {
return myBounded.getValue().toString();
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedIntegerHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedIntegerHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedIntegerHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -64,4 +64,10 @@
public String getState() {
return myBounded.getValue().toString();
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedLongHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedLongHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/BoundedLongHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -63,4 +63,11 @@
public String getState() {
return myBounded.getValue().toString();
}
+
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/DoubleHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/DoubleHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/DoubleHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -65,4 +65,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FileHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FileHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FileHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -72,4 +72,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FloatHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FloatHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/FloatHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -63,4 +63,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/GuiTunableInterceptor.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/GuiTunableInterceptor.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/GuiTunableInterceptor.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -3,6 +3,9 @@
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
+import java.awt.Container;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -10,6 +13,8 @@
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
+import javax.swing.JButton;
+import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.TitledBorder;
@@ -26,7 +31,11 @@
private Map<List<Guihandler>,JPanel> panelMap;
int n;
JPanel r = new JPanel(new BorderLayout());
+ private JFrame frame = new JFrame("Set Parameters");
+ private JPanel panel = new JPanel();
List<Guihandler> lh;
+ private boolean out;
+ Object[] objs;
public GuiTunableInterceptor() {
super( new GuiHandlerFactory<Guihandler>());
@@ -34,6 +43,7 @@
}
public boolean createUI(Object... objs) {
+ this.objs=objs;
lh = new ArrayList<Guihandler>();
for ( Object o : objs ) {
if ( !handlerMap.containsKey( o ) )
@@ -95,38 +105,24 @@
}
- // get the gui into the proper state
for ( Guihandler h : lh )
h.notifyDependents();
-
- //Custom button text
- Object[] buttons = {"OK","Cancel"};
- int n = JOptionPane.showOptionDialog(parent,
- panelMap.get(lh),
- "Set Parameters",
- JOptionPane.YES_NO_CANCEL_OPTION,
- JOptionPane.PLAIN_MESSAGE,
- null,
- buttons,
- buttons[0]);
- if ( n == JOptionPane.OK_OPTION ){
- for ( Guihandler h : lh ){
-
-// for(Object o : objs){
-// Object[] interfaces =
o.getClass().getInterfaces();
-// for(int
i=0;i<interfaces.length;i++){
-//
if(interfaces[i].equals(TunableValidator.class))((TunableValidator)o).validate(h.getName());
-// }
-// }
- if(h.getDependency()==null)h.handle();
- else h.notifyDependents();//h.handle();
- }
+ if(parent==null){
+ displayOptionPanel();
+// preparePanel();displayPanel();
+ return out;
+ }
+ else{
+ int nbPanel = ((Container)
parent).getComponentCount()-1;
+ JPanel buttonBox = (JPanel) ((Container)
parent).getComponent(nbPanel);
+ ((JPanel)parent).remove(nbPanel);
+ ((JPanel)parent).add(panelMap.get(lh));
+ ((JPanel)parent).add(buttonBox);
+ parent = null;
return true;
}
- else
- return false;
}
private JPanel createJPanel(String title, Guihandler gh,Param
alignment) {
@@ -179,4 +175,82 @@
return ret;
}
+
+
+ private void preparePanel(){
+ JPanel tunapanel = panelMap.get(lh);
+ JPanel buttonpanel = new JPanel();
+ JButton okbutton= new JButton("OK");
+ okbutton.setActionCommand("ok");
+ JButton cancelbutton = new JButton("Cancel");
+ cancelbutton.setActionCommand("cancel");
+ okbutton.addActionListener(new myAction());
+ cancelbutton.addActionListener(new myAction());
+ buttonpanel.add(okbutton);
+ buttonpanel.add(cancelbutton);
+ panel.setLayout(new BoxLayout(panel,BoxLayout.PAGE_AXIS));
+ panel.add(tunapanel);
+ panel.add(buttonpanel);
+ frame.setContentPane(panel);
+ frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+ frame.setLocation(600, 500);
+ }
+ private void displayPanel(){
+ frame.setVisible(true);
+ frame.pack();
+ }
+
+ private void displayOptionPanel(){
+ Object[] buttons = {"OK","Cancel"};
+ int n = JOptionPane.showOptionDialog(parent,
+ panelMap.get(lh),
+ "Set Parameters",
+ JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.PLAIN_MESSAGE,
+ null,
+ buttons,
+ buttons[0]);
+ if ( n == JOptionPane.OK_OPTION ){
+ String valid = null;
+ for ( Guihandler h : lh )h.handleDependents();
+ for(Object o : objs){
+ Object[] interfaces =
o.getClass().getInterfaces();
+ for(int i=0;i<interfaces.length;i++){
+
if(interfaces[i].equals(TunableValidator.class))valid=((TunableValidator)o).validate();
+ }
+ }
+ if(valid==null){
+ out = true;
+ }
+ else{
+ JOptionPane.showMessageDialog(new
JFrame(),valid,"TunableValidator problem",JOptionPane.ERROR_MESSAGE);
+ for(Guihandler h : lh)h.resetValue();
+ displayOptionPanel();
+ }
+ }
+ else out = false;
+ }
+
+
+ private class myAction implements ActionListener{
+ public void actionPerformed(ActionEvent ae){
+ if(ae.getActionCommand().equals("ok")){
+ String valid = null;
+ for ( Guihandler h : lh )h.handleDependents();
+
+ for(Object o : objs){
+ Object[] interfaces =
o.getClass().getInterfaces();
+ for(int i=0;i<interfaces.length;i++){
+
if(interfaces[i].equals(TunableValidator.class))
valid=((TunableValidator)o).validate();
+ }
+ }
+ if(valid==null){out = true;frame.dispose();}
+ else{JOptionPane.showMessageDialog(new
JFrame(),valid,"TunableValidator
problem",JOptionPane.ERROR_MESSAGE);displayPanel();}
+ }
+ else if(ae.getActionCommand().equals("cancel")){
+ out = false;
+ frame.dispose();
+ }
+ }
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/Guihandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/Guihandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/Guihandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -17,4 +17,9 @@
void checkDependency(String name, String state);
String getDependency();
+
+ void handleDependents();
+
+ //added method to reset the value after handling to check the
TunableValidator method
+ void resetValue();
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/InputStreamHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/InputStreamHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/InputStreamHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -324,6 +324,12 @@
return this;
}
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/IntegerHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/IntegerHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/IntegerHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -72,4 +72,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListMultipleHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListMultipleHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListMultipleHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -80,4 +80,12 @@
return sel.toString();
}
+
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
+
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListSingleHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListSingleHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/ListSingleHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -65,4 +65,11 @@
return sel.toString();
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
+
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/LongHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/LongHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/LongHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -63,4 +63,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/StringHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/StringHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/StringHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -58,4 +58,10 @@
}
return s;
}
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/URLHandler.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/URLHandler.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/internal/gui/URLHandler.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -180,6 +180,12 @@
return this;
}
} // MyCellRenderer
+
+ @Override
+ public void resetValue() {
+ // TODO Auto-generated method stub
+
+ }
}
Modified:
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/util/XorPanel.java
===================================================================
---
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/util/XorPanel.java
2009-04-15 02:45:27 UTC (rev 16580)
+++
csplugins/trunk/pasteur/mathieu/tunables2/src/main/java/org/cytoscape/work/util/XorPanel.java
2009-04-15 14:53:29 UTC (rev 16581)
@@ -100,6 +100,7 @@
public void handle() {}
public String getState() {return null;}
public void returnPanel() {}
+ public void resetValue() {};
public void addHandlerListener(HandlerListener listener) {
// TODO Auto-generated method stub
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---