()
| 569 | |
| 570 | |
| 571 | private JMenu buildFileMenu() { |
| 572 | JMenuItem item; |
| 573 | fileMenu = new JMenu(tr("File")); |
| 574 | fileMenu.setMnemonic(KeyEvent.VK_F); |
| 575 | |
| 576 | item = newJMenuItem(tr("New"), 'N'); |
| 577 | item.addActionListener(event -> { |
| 578 | try { |
| 579 | base.handleNew(); |
| 580 | } catch (Exception e1) { |
| 581 | e1.printStackTrace(); |
| 582 | } |
| 583 | }); |
| 584 | fileMenu.add(item); |
| 585 | |
| 586 | item = Editor.newJMenuItem(tr("Open..."), 'O'); |
| 587 | item.addActionListener(event -> { |
| 588 | try { |
| 589 | base.handleOpenPrompt(); |
| 590 | } catch (Exception e1) { |
| 591 | e1.printStackTrace(); |
| 592 | } |
| 593 | }); |
| 594 | fileMenu.add(item); |
| 595 | |
| 596 | base.rebuildRecentSketchesMenuItems(); |
| 597 | recentSketchesMenu = new JMenu(tr("Open Recent")); |
| 598 | SwingUtilities.invokeLater(() -> rebuildRecentSketchesMenu()); |
| 599 | fileMenu.add(recentSketchesMenu); |
| 600 | |
| 601 | if (sketchbookMenu == null) { |
| 602 | sketchbookMenu = new JMenu(tr("Sketchbook")); |
| 603 | MenuScroller.setScrollerFor(sketchbookMenu); |
| 604 | base.rebuildSketchbookMenu(sketchbookMenu); |
| 605 | } |
| 606 | fileMenu.add(sketchbookMenu); |
| 607 | |
| 608 | if (examplesMenu == null) { |
| 609 | examplesMenu = new JMenu(tr("Examples")); |
| 610 | MenuScroller.setScrollerFor(examplesMenu); |
| 611 | base.rebuildExamplesMenu(examplesMenu); |
| 612 | } |
| 613 | fileMenu.add(examplesMenu); |
| 614 | |
| 615 | item = Editor.newJMenuItem(tr("Close"), 'W'); |
| 616 | item.addActionListener(event -> base.handleClose(Editor.this)); |
| 617 | fileMenu.add(item); |
| 618 | |
| 619 | saveMenuItem = newJMenuItem(tr("Save"), 'S'); |
| 620 | saveMenuItem.addActionListener(event -> handleSave(false)); |
| 621 | fileMenu.add(saveMenuItem); |
| 622 | |
| 623 | saveAsMenuItem = newJMenuItemShift(tr("Save As..."), 'S'); |
| 624 | saveAsMenuItem.addActionListener(event -> handleSaveAs()); |
| 625 | fileMenu.add(saveAsMenuItem); |
| 626 | |
| 627 | fileMenu.addSeparator(); |
| 628 |
no test coverage detected