MCPcopy
hub / github.com/arduino/Arduino / buildMenuBar

Method buildMenuBar

app/src/processing/app/Editor.java:508–568  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

506
507
508 private void buildMenuBar() {
509 JMenuBar menubar = new JMenuBar();
510 final JMenu fileMenu = buildFileMenu();
511 fileMenu.addMenuListener(new StubMenuListener() {
512 @Override
513 public void menuSelected(MenuEvent e) {
514 List<Component> components = Arrays.asList(fileMenu.getMenuComponents());
515 if (!components.contains(sketchbookMenu)) {
516 fileMenu.insert(sketchbookMenu, 3);
517 }
518 if (!components.contains(examplesMenu)) {
519 fileMenu.insert(examplesMenu, 4);
520 }
521 fileMenu.revalidate();
522 validate();
523 }
524 });
525 menubar.add(fileMenu);
526
527 menubar.add(buildEditMenu());
528
529 final JMenu sketchMenu = new JMenu(tr("Sketch"));
530 sketchMenu.setMnemonic(KeyEvent.VK_S);
531 sketchMenu.addMenuListener(new StubMenuListener() {
532
533 @Override
534 public void menuSelected(MenuEvent e) {
535 buildSketchMenu(sketchMenu);
536 sketchMenu.revalidate();
537 validate();
538 }
539 });
540 buildSketchMenu(sketchMenu);
541 menubar.add(sketchMenu);
542
543 final JMenu toolsMenu = buildToolsMenu();
544 toolsMenu.addMenuListener(new StubMenuListener() {
545 @Override
546 public void menuSelected(MenuEvent e) {
547 List<Component> components = Arrays.asList(toolsMenu.getMenuComponents());
548 int offset = 0;
549 for (JMenu menu : base.getBoardsCustomMenus()) {
550 if (!components.contains(menu)) {
551 toolsMenu.insert(menu, numTools + offset);
552 offset++;
553 }
554 }
555 if (!components.contains(portMenu)) {
556 toolsMenu.insert(portMenu, numTools + offset);
557 }
558 programmersMenu.removeAll();
559 base.getProgrammerMenus().forEach(programmersMenu::add);
560 toolsMenu.revalidate();
561 validate();
562 }
563 });
564 menubar.add(toolsMenu);
565

Callers 1

EditorMethod · 0.95

Calls 7

buildFileMenuMethod · 0.95
buildEditMenuMethod · 0.95
buildSketchMenuMethod · 0.95
buildToolsMenuMethod · 0.95
buildHelpMenuMethod · 0.95
trMethod · 0.80
addMethod · 0.45

Tested by

no test coverage detected