Author: jm
Date: 2012-01-10 12:20:58 -0800 (Tue, 10 Jan 2012)
New Revision: 27965
Modified:
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuListener.java
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuTunableHandlerImpl.java
Log:
Fixes #566: Fixed the way submenus are dynamically created
Modified:
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuListener.java
===================================================================
---
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuListener.java
2012-01-10 20:11:25 UTC (rev 27964)
+++
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuListener.java
2012-01-10 20:20:58 UTC (rev 27965)
@@ -65,8 +65,10 @@
JMenu parentMenu = (JMenu)(e.getSource());
lastMenuItem = stm.buildConfiguration(tf);
if ( lastMenuItem != null ) {
- if ( lastMenuItem instanceof JMenu )
+ String title = lastMenuItem.getText();
+ if (title == null || title.isEmpty()) {
lastMenuItem.setText(menuName);
+ }
lastMenuItem.setEnabled(enableState);
parentMenu.add( lastMenuItem );
}
Modified:
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuTunableHandlerImpl.java
===================================================================
---
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuTunableHandlerImpl.java
2012-01-10 20:11:25 UTC (rev 27964)
+++
core3/impl/trunk/work-swing-impl/impl/src/main/java/org/cytoscape/work/internal/submenu/SubmenuTunableHandlerImpl.java
2012-01-10 20:20:58 UTC (rev 27965)
@@ -11,7 +11,6 @@
import javax.swing.JMenu;
import java.util.List;
import java.util.Collections;
-import java.util.ArrayList;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
@@ -25,7 +24,6 @@
private DialogTaskManager dtm;
private TaskFactory tf;
- private static final String TEMP_TITLE = "Temporary Title";
private static final Logger logger =
LoggerFactory.getLogger(SubmenuTunableHandlerImpl.class);
public SubmenuTunableHandlerImpl(final Field field, final Object
instance, final Tunable tunable) {
@@ -51,16 +49,14 @@
menuTitles =
((ListSingleSelection<String>)o).getPossibleValues();
if ( menuTitles.size() <= 0 ) {
- // no list means no menu
- menuItem = null;
+ menuItem = new SubmenuItem(null,this,dtm,tf);
} else if ( menuTitles.size() == 1 ) {
// assume the lone entry in the list is the title
menuItem = new
SubmenuItem(menuTitles.get(0),this,dtm,tf);
} else {
- // The temporary title will be replaced
- menuItem = new JMenu(TEMP_TITLE);
+ menuItem = new JMenu((String) null);
for ( String title : menuTitles )
- ((JMenu)menuItem).add(new
SubmenuItem(title,this,dtm,tf));
+ ((JMenu)menuItem).add(new
SubmenuItem(title,this,dtm,tf));
}
} catch (Exception e) { e.printStackTrace(); }
--
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.