From: Bill Kuker Date: Mon, 22 Nov 2010 01:31:55 +0000 (+0000) Subject: If only one creator do not do submenu X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=73f68f40bd4f7a7c433506921c1e67f0f4175a77;p=sw%2Fmotorsim If only one creator do not do submenu --- diff --git a/gui/com/billkuker/rocketry/motorsim/visual/MultiObjectEditor.java b/gui/com/billkuker/rocketry/motorsim/visual/MultiObjectEditor.java index fcd7c68..9fcabe8 100644 --- a/gui/com/billkuker/rocketry/motorsim/visual/MultiObjectEditor.java +++ b/gui/com/billkuker/rocketry/motorsim/visual/MultiObjectEditor.java @@ -36,7 +36,7 @@ public abstract class MultiObjectEditor extend private final String noun; - private Set creators = new HashSet(); + private List creators = new Vector(); private final Map objectToEditor = new HashMap(); private final Map editorToObject = new HashMap(); @@ -178,25 +178,41 @@ public abstract class MultiObjectEditor extend public final List getMenuItems(){ List ret = new Vector(); - ret.add(new JMenu("New"){ - private static final long serialVersionUID = 1L; - { - for (final ObjectCreator c : creators ){ - add(new JMenuItem("New " + c.getName()){ - private static final long serialVersionUID = 1L; - { - addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent ae) { - log.debug("New"); - menuNew(c); - } - }); + if ( creators.size() == 1 ){ + final ObjectCreator c = creators.get(0); + ret.add(new JMenuItem("New " + c.getName()){ + private static final long serialVersionUID = 1L; + { + addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent ae) { + log.debug("New"); + menuNew(c); } }); } - } - }); + }); + } else { + ret.add(new JMenu("New"){ + private static final long serialVersionUID = 1L; + { + for (final ObjectCreator c : creators ){ + add(new JMenuItem("New " + c.getName()){ + private static final long serialVersionUID = 1L; + { + addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent ae) { + log.debug("New"); + menuNew(c); + } + }); + } + }); + } + } + }); + } ret.add(new JMenuItem("Open" + noun + "..."){ private static final long serialVersionUID = 1L; {