1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-03-14 11:29:26 +01:00

Editor: serialMenu -> portMenu, and some cleanup

This commit is contained in:
Federico Fissore 2015-06-22 13:58:56 +02:00
parent f255319f91
commit 9e81ab67bb
2 changed files with 24 additions and 34 deletions

View File

@ -1317,7 +1317,7 @@ public class Base {
} }
public void rebuildBoardsMenu() throws Exception { public void rebuildBoardsMenu() throws Exception {
boardsCustomMenus = new LinkedList<JMenu>(); boardsCustomMenus = new LinkedList<>();
// The first custom menu is the "Board" selection submenu // The first custom menu is the "Board" selection submenu
JMenu boardMenu = new JMenu(_("Board")); JMenu boardMenu = new JMenu(_("Board"));

View File

@ -134,7 +134,7 @@ public class Editor extends JFrame implements RunnerListener {
static JMenu examplesMenu; static JMenu examplesMenu;
static JMenu importMenu; static JMenu importMenu;
private static JMenu serialMenu; private static JMenu portMenu;
static AbstractMonitor serialMonitor; static AbstractMonitor serialMonitor;
@ -223,7 +223,7 @@ public class Editor extends JFrame implements RunnerListener {
for (Component menuItem : toolsMenuItemsToRemove) { for (Component menuItem : toolsMenuItemsToRemove) {
toolsMenu.remove(menuItem); toolsMenu.remove(menuItem);
} }
toolsMenu.remove(serialMenu); toolsMenu.remove(portMenu);
} }
}); });
@ -552,7 +552,7 @@ public class Editor extends JFrame implements RunnerListener {
toolsMenu.addMenuListener(new StubMenuListener() { toolsMenu.addMenuListener(new StubMenuListener() {
@Override @Override
public void menuSelected(MenuEvent e) { public void menuSelected(MenuEvent e) {
List<Component> components = Arrays.asList(fileMenu.getComponents()); List<Component> components = Arrays.asList(toolsMenu.getComponents());
int offset = 0; int offset = 0;
for (JMenu menu : base.getBoardsCustomMenus()) { for (JMenu menu : base.getBoardsCustomMenus()) {
if (!components.contains(menu)) { if (!components.contains(menu)) {
@ -560,8 +560,8 @@ public class Editor extends JFrame implements RunnerListener {
offset++; offset++;
} }
} }
if (!components.contains(serialMenu)) { if (!components.contains(portMenu)) {
toolsMenu.insert(serialMenu, numTools + offset); toolsMenu.insert(portMenu, numTools + offset);
} }
toolsMenu.revalidate(); toolsMenu.revalidate();
validate(); validate();
@ -780,11 +780,7 @@ public class Editor extends JFrame implements RunnerListener {
addInternalTools(toolsMenu); addInternalTools(toolsMenu);
JMenuItem item = newJMenuItemShift(_("Serial Monitor"), 'M'); JMenuItem item = newJMenuItemShift(_("Serial Monitor"), 'M');
item.addActionListener(new ActionListener() { item.addActionListener(e -> handleSerial());
public void actionPerformed(ActionEvent e) {
handleSerial();
}
});
toolsMenu.add(item); toolsMenu.add(item);
addTools(toolsMenu, BaseNoGui.getToolsFolder()); addTools(toolsMenu, BaseNoGui.getToolsFolder());
@ -798,14 +794,12 @@ public class Editor extends JFrame implements RunnerListener {
// XXX: DAM: these should probably be implemented using the Tools plugin // XXX: DAM: these should probably be implemented using the Tools plugin
// API, if possible (i.e. if it supports custom actions, etc.) // API, if possible (i.e. if it supports custom actions, etc.)
for (JMenu menu : base.getBoardsCustomMenus()) { base.getBoardsCustomMenus().stream().forEach(toolsMenu::add);
toolsMenu.add(menu);
}
if (serialMenu == null) if (portMenu == null)
serialMenu = new JMenu(_("Port")); portMenu = new JMenu(_("Port"));
populatePortMenu(); populatePortMenu();
toolsMenu.add(serialMenu); toolsMenu.add(portMenu);
toolsMenu.addSeparator(); toolsMenu.addSeparator();
JMenu programmerMenu = new JMenu(_("Programmer")); JMenu programmerMenu = new JMenu(_("Programmer"));
@ -813,11 +807,7 @@ public class Editor extends JFrame implements RunnerListener {
toolsMenu.add(programmerMenu); toolsMenu.add(programmerMenu);
item = new JMenuItem(_("Burn Bootloader")); item = new JMenuItem(_("Burn Bootloader"));
item.addActionListener(new ActionListener() { item.addActionListener(e -> handleBurnBootloader());
public void actionPerformed(ActionEvent e) {
handleBurnBootloader();
}
});
toolsMenu.add(item); toolsMenu.add(item);
toolsMenu.addMenuListener(new StubMenuListener() { toolsMenu.addMenuListener(new StubMenuListener() {
@ -1098,7 +1088,7 @@ public class Editor extends JFrame implements RunnerListener {
} }
private void selectSerialPort(String name) { private void selectSerialPort(String name) {
if(serialMenu == null) { if(portMenu == null) {
System.out.println(_("serialMenu is null")); System.out.println(_("serialMenu is null"));
return; return;
} }
@ -1107,8 +1097,8 @@ public class Editor extends JFrame implements RunnerListener {
return; return;
} }
JCheckBoxMenuItem selection = null; JCheckBoxMenuItem selection = null;
for (int i = 0; i < serialMenu.getItemCount(); i++) { for (int i = 0; i < portMenu.getItemCount(); i++) {
JMenuItem menuItem = serialMenu.getItem(i); JMenuItem menuItem = portMenu.getItem(i);
if (!(menuItem instanceof JCheckBoxMenuItem)) { if (!(menuItem instanceof JCheckBoxMenuItem)) {
continue; continue;
} }
@ -1135,7 +1125,7 @@ public class Editor extends JFrame implements RunnerListener {
private void populatePortMenu() { private void populatePortMenu() {
serialMenu.removeAll(); portMenu.removeAll();
String selectedPort = PreferencesData.get("serial.port"); String selectedPort = PreferencesData.get("serial.port");
@ -1155,7 +1145,7 @@ public class Editor extends JFrame implements RunnerListener {
for (BoardPort port : ports) { for (BoardPort port : ports) {
if (lastProtocol == null || !port.getProtocol().equals(lastProtocol)) { if (lastProtocol == null || !port.getProtocol().equals(lastProtocol)) {
if (lastProtocol != null) { if (lastProtocol != null) {
serialMenu.addSeparator(); portMenu.addSeparator();
} }
lastProtocol = port.getProtocol(); lastProtocol = port.getProtocol();
@ -1166,17 +1156,17 @@ public class Editor extends JFrame implements RunnerListener {
} }
JMenuItem lastProtocolMenuItem = new JMenuItem(_(lastProtocolTranslated)); JMenuItem lastProtocolMenuItem = new JMenuItem(_(lastProtocolTranslated));
lastProtocolMenuItem.setEnabled(false); lastProtocolMenuItem.setEnabled(false);
serialMenu.add(lastProtocolMenuItem); portMenu.add(lastProtocolMenuItem);
} }
String address = port.getAddress(); String address = port.getAddress();
String label = port.getLabel(); String label = port.getLabel();
JCheckBoxMenuItem item = new JCheckBoxMenuItem(label, address.equals(selectedPort)); JCheckBoxMenuItem item = new JCheckBoxMenuItem(label, address.equals(selectedPort));
item.addActionListener(new SerialMenuListener(address)); item.addActionListener(new SerialMenuListener(address));
serialMenu.add(item); portMenu.add(item);
} }
serialMenu.setEnabled(serialMenu.getMenuComponentCount() > 0); portMenu.setEnabled(portMenu.getMenuComponentCount() > 0);
} }
@ -2320,10 +2310,10 @@ public class Editor extends JFrame implements RunnerListener {
private boolean serialPrompt() { private boolean serialPrompt() {
int count = serialMenu.getItemCount(); int count = portMenu.getItemCount();
Object[] names = new Object[count]; Object[] names = new Object[count];
for (int i = 0; i < count; i++) { for (int i = 0; i < count; i++) {
names[i] = serialMenu.getItem(i).getText(); names[i] = portMenu.getItem(i).getText();
} }
String result = (String) String result = (String)
@ -2390,7 +2380,7 @@ public class Editor extends JFrame implements RunnerListener {
statusNotice(_("Done uploading.")); statusNotice(_("Done uploading."));
} }
} catch (SerialNotFoundException e) { } catch (SerialNotFoundException e) {
if (serialMenu.getItemCount() == 0) statusError(e); if (portMenu.getItemCount() == 0) statusError(e);
else if (serialPrompt()) run(); else if (serialPrompt()) run();
else statusNotice(_("Upload canceled.")); else statusNotice(_("Upload canceled."));
} catch (PreferencesMapException e) { } catch (PreferencesMapException e) {
@ -2460,7 +2450,7 @@ public class Editor extends JFrame implements RunnerListener {
statusNotice(_("Done uploading.")); statusNotice(_("Done uploading."));
} }
} catch (SerialNotFoundException e) { } catch (SerialNotFoundException e) {
if (serialMenu.getItemCount() == 0) statusError(e); if (portMenu.getItemCount() == 0) statusError(e);
else if (serialPrompt()) run(); else if (serialPrompt()) run();
else statusNotice(_("Upload canceled.")); else statusNotice(_("Upload canceled."));
} catch (PreferencesMapException e) { } catch (PreferencesMapException e) {