/** * Creates the MenuBar for this application. I believe in my heart that this * should be defined in a file somewhere, but that is for later. */ public void createMenuBar() { this.menuCreators = findMenuCreators(); makeFileMenu(); makeEditMenu(); makeRunMenu(); makeSearchMenu(); makeOptionsMenu(); makeHelpMenu(); this.add(fileMenu); this.add(editMenu); this.add(searchMenu); this.add(runMenu); this.add(optionsMenu); menuCreators.stream() .map(MenuCreator::getTopLevelMenus) .flatMap(Arrays::stream) .forEachOrdered(this::add); this.add(helpMenu); }
private void makeSearchMenu() { searchMenu = makeMenuRes("menu_search", 'S'); //$NON-NLS-1$ JMenuItem search = makeMenuItemRes("menu_search", 'F', ActionNames.SEARCH_TREE, KeyStrokes.SEARCH_TREE); //$NON-NLS-1$ searchMenu.add(search); search.setEnabled(true); JMenuItem searchReset = makeMenuItemRes("menu_search_reset", 'R', ActionNames.SEARCH_RESET); //$NON-NLS-1$ searchMenu.add(searchReset); searchReset.setEnabled(true); addPluginsMenuItems(searchMenu, menuCreators, MENU_LOCATION.SEARCH); }
private void makeEditMenu() { editMenu = makeMenuRes("edit",'E'); //$NON-NLS-1$ // From the Java Look and Feel Guidelines: If all items in a menu // are disabled, then disable the menu. Makes sense. editMenu.setEnabled(false); addPluginsMenuItems(editMenu, menuCreators, MENU_LOCATION.EDIT); }
private void makeOptionsMenu() { optionsMenu = makeMenuRes("option",'O'); //$NON-NLS-1$ optionsMenu.add(makeMenuItemRes("function_dialog_menu_item", 'F', ActionNames.FUNCTIONS, KeyStrokes.FUNCTIONS)); optionsMenu.add(createLaFMenu()); JCheckBoxMenuItem menuLoggerPanel = makeCheckBoxMenuItemRes("menu_logger_panel", ActionNames.LOGGER_PANEL_ENABLE_DISABLE); //$NON-NLS-1$ GuiPackage guiInstance = GuiPackage.getInstance(); if (guiInstance != null) { //avoid error in ant task tests (good way?) JMenu menuLoggerLevel = makeMenuRes("menu_logger_level"); //$NON-NLS-1$ JMenuItem menuItem; String levelString; optionsMenu.add(makeMenuItemRes("sslmanager", 'S', ActionNames.SSL_MANAGER, KeyStrokes.SSL_MANAGER)); optionsMenu.add(makeLanguageMenu()); optionsMenu.add(makeMenuItemRes("menu_collapse_all", 'A', ActionNames.COLLAPSE_ALL, KeyStrokes.COLLAPSE_ALL)); optionsMenu.add(makeMenuItemRes("menu_expand_all", 'X', ActionNames.EXPAND_ALL, KeyStrokes.EXPAND_ALL)); optionsMenu.add(makeMenuItemRes("menu_zoom_in", 'I', ActionNames.ZOOM_IN)); optionsMenu.add(makeMenuItemRes("menu_zoom_out", 'U', ActionNames.ZOOM_OUT)); JCheckBoxMenuItem saveBeforeRun = makeCheckBoxMenuItemRes("menu_save_before_run", ActionNames.SAVE_BEFORE_RUN); //$NON-NLS-1$ if (guiInstance != null) { saveBeforeRun.setSelected(guiInstance.shouldSaveBeforeRunByPreference()); addPluginsMenuItems(optionsMenu, menuCreators, MENU_LOCATION.OPTIONS);
private static JMenu makeLanguageMenu() { final JMenu languageMenu = makeMenuRes("choose_language",'C'); //$NON-NLS-1$ LangMenuHelper langMenu = new LangMenuHelper(languageMenu); /* * Note: the item name is used by ChangeLanguage to create a Locale for * that language, so need to ensure that the language strings are valid * If they exist, use the Locale language constants. * Also, need to ensure that the names are valid resource entries too. */ for (String lang : getLanguages()) { langMenu.addLang(lang); } return languageMenu; }
public JMeterMenuBar() { // List for recent files menu items fileLoadRecentFiles = new LinkedList<>(); // Lists for remote engines menu items remoteEngineStart = new LinkedList<>(); remoteEngineStop = new LinkedList<>(); remoteEngineShut = new LinkedList<>(); remoteEngineExit = new LinkedList<>(); remoteHosts = JOrphanUtils.split(JMeterUtils.getPropDefault("remote_hosts", ""), ","); //$NON-NLS-1$ if (remoteHosts.length == 1 && remoteHosts[0].isEmpty()) { remoteHosts = new String[0]; } this.getRemoteItems(); createMenuBar(); JMeterUtils.addLocaleChangeListener(this); }
/** * Close the currently selected menu. */ public void closeMenu() { if (!menuBar.isSelected()) { return; } MenuElement[] menuElement = menuBar.getSubElements(); if (menuElement != null) { for (MenuElement element : menuElement) { JMenu menu = (JMenu) element; if (menu.isSelected()) { menu.setPopupMenuVisible(false); menu.setSelected(false); break; } } } }
private JMenu createLaFMenu() { JMenu lafMenu = makeMenuRes("appearance", 'L'); for (LookAndFeelInfo laf : getAllLAFs()) { JMenuItem menuItem = new JMenuItem(laf.getName()); menuItem.addActionListener(ActionRouter.getInstance()); menuItem.setActionCommand(ActionNames.LAF_PREFIX + laf.getClassName()); menuItem.setToolTipText(laf.getClassName()); // show the classname to the user lafMenu.add(menuItem); } return lafMenu; }
menuBar = new JMeterMenuBar(); setJMenuBar(menuBar); JPanel all = new JPanel(new BorderLayout());
private void makeHelpMenu() { helpMenu = makeMenuRes("help",'H'); //$NON-NLS-1$ JMenuItem contextHelp = makeMenuItemRes("help", 'H', ActionNames.HELP, KeyStrokes.HELP); //$NON-NLS-1$ JMenuItem whatClass = makeMenuItemRes("help_node", 'W', ActionNames.WHAT_CLASS, KeyStrokes.WHAT_CLASS);//$NON-NLS-1$ JMenuItem setDebug = makeMenuItemRes("debug_on", ActionNames.DEBUG_ON, KeyStrokes.DEBUG_ON);//$NON-NLS-1$ JMenuItem resetDebug = makeMenuItemRes("debug_off", ActionNames.DEBUG_OFF, KeyStrokes.DEBUG_OFF);//$NON-NLS-1$ JMenuItem heapDump = makeMenuItemRes("heap_dump", ActionNames.HEAP_DUMP);//$NON-NLS-1$ JMenuItem threadDump = makeMenuItemRes("thread_dump", ActionNames.THREAD_DUMP);//$NON-NLS-1$ JMenu usefulLinks = makeMenuRes("useful_links");//$NON-NLS-1$ usefulLinks.add(makeMenuItemRes("link_release_notes", ActionNames.LINK_RELEASE_NOTES)); usefulLinks.add(makeMenuItemRes("link_bug_tracker", ActionNames.LINK_BUG_TRACKER)); usefulLinks.add(makeMenuItemRes("link_comp_ref", ActionNames.LINK_COMP_REF)); usefulLinks.add(makeMenuItemRes("link_func_ref", ActionNames.LINK_FUNC_REF)); usefulLinks.add(makeMenuItemRes("link_nightly_build", ActionNames.LINK_NIGHTLY_BUILD)); JMenuItem helpAbout = makeMenuItemRes("about", 'A', ActionNames.ABOUT); helpMenu.add(contextHelp); helpMenu.addSeparator(); helpMenu.add(whatClass); helpMenu.add(setDebug); helpMenu.add(resetDebug); helpMenu.add(heapDump); helpMenu.add(threadDump); addPluginsMenuItems(helpMenu, menuCreators, MENU_LOCATION.HELP); helpMenu.addSeparator(); helpMenu.add(usefulLinks); helpMenu.addSeparator(); helpMenu.add(helpAbout); }
private void makeRunMenu() { runMenu = makeMenuRes("run",'R'); //$NON-NLS-1$ runStart = makeMenuItemRes("start", 'S', ActionNames.ACTION_START, KeyStrokes.ACTION_START); //$NON-NLS-1$ runStartNoTimers = makeMenuItemRes("start_no_timers", 'N', ActionNames.ACTION_START_NO_TIMERS); //$NON-NLS-1$ runStop = makeMenuItemRes("stop", 'T', ActionNames.ACTION_STOP, KeyStrokes.ACTION_STOP); //$NON-NLS-1$ runStop.setEnabled(false); runShut = makeMenuItemRes("shutdown", 'Y', ActionNames.ACTION_SHUTDOWN, KeyStrokes.ACTION_SHUTDOWN); //$NON-NLS-1$ runShut.setEnabled(false); JMenuItem runClear = makeMenuItemRes("clear", 'C', ActionNames.CLEAR, KeyStrokes.CLEAR); JMenuItem runClearAll = makeMenuItemRes("clear_all", 'a', ActionNames.CLEAR_ALL, KeyStrokes.CLEAR_ALL); JMenuItem remoteStartAll = makeMenuItemRes("remote_start_all", ActionNames.REMOTE_START_ALL, KeyStrokes.REMOTE_START_ALL); runMenu.add(remoteStartAll); if (remoteStop != null) { runMenu.add(remoteStop); JMenuItem remoteStopAll = makeMenuItemRes("remote_stop_all", 'X', ActionNames.REMOTE_STOP_ALL, KeyStrokes.REMOTE_STOP_ALL); runMenu.add(remoteStopAll); JMenuItem remoteShutAll = makeMenuItemRes("remote_shut_all", 'X', ActionNames.REMOTE_SHUT_ALL, KeyStrokes.REMOTE_SHUT_ALL); runMenu.add(remoteShutAll); JMenuItem remoteExitAll = makeMenuItemRes("remote_exit_all", ActionNames.REMOTE_EXIT_ALL); runMenu.add(remoteExitAll);
private void makeFileMenu() { fileMenu = makeMenuRes("file",'F'); //$NON-NLS-1$ JMenuItem fileSave = makeMenuItemRes("save", 'S', ActionNames.SAVE, KeyStrokes.SAVE); //$NON-NLS-1$ fileSaveAs = makeMenuItemRes("save_all_as", 'A', ActionNames.SAVE_ALL_AS, KeyStrokes.SAVE_ALL_AS); //$NON-NLS-1$ fileSaveAs.setEnabled(true); JMenuItem fileSaveSelectionAs = makeMenuItemRes("save_as", 'L', ActionNames.SAVE_AS); fileSaveSelectionAs.setEnabled(true); JMenuItem fileSelectionAsTestFragment = makeMenuItemRes("save_as_test_fragment", 'F', ActionNames.SAVE_AS_TEST_FRAGMENT); fileSelectionAsTestFragment.setEnabled(true); fileRevert = makeMenuItemRes("revert_project", 'R', ActionNames.REVERT_PROJECT); //$NON-NLS-1$ fileRevert.setEnabled(false); fileLoad = makeMenuItemRes("menu_open", 'O', ActionNames.OPEN, KeyStrokes.OPEN); //$NON-NLS-1$ recentFilesOpen = makeMenuRes("menu_recent", 'E'); //$NON-NLS-1$ recentFilesOpen.setEnabled(false); JMenuItem templates = makeMenuItemRes("template_menu", 'T', ActionNames.TEMPLATES); templates.setEnabled(true); JMenuItem fileNew = makeMenuItemRes("new", 'N', ActionNames.CLOSE, KeyStrokes.CLOSE); JMenuItem fileExit = makeMenuItemRes("exit", 'X', ActionNames.EXIT, KeyStrokes.EXIT); fileMerge = makeMenuItemRes("menu_merge", 'M', ActionNames.MERGE); //$NON-NLS-1$