Java Examples for javafx.scene.control.SeparatorMenuItem
The following java examples will help you to understand the usage of javafx.scene.control.SeparatorMenuItem. These source code samples are taken from different open source projects.
Example 1
Project: jabref-master File: GroupTreeController.java View source code |
private ContextMenu createContextMenuForGroup(GroupNodeViewModel group) { ContextMenu menu = new ContextMenu(); MenuItem editGroup = new MenuItem(Localization.lang("Edit group")); editGroup.setOnAction( event -> { menu.hide(); viewModel.editGroup(group); }); MenuItem addSubgroup = new MenuItem(Localization.lang("Add subgroup")); addSubgroup.setOnAction( event -> { menu.hide(); viewModel.addNewSubgroup(group); }); MenuItem removeGroupAndSubgroups = new MenuItem(Localization.lang("Remove group and subgroups")); removeGroupAndSubgroups.setOnAction( event -> viewModel.removeGroupAndSubgroups(group)); MenuItem removeGroupKeepSubgroups = new MenuItem(Localization.lang("Remove group, keep subgroups")); removeGroupKeepSubgroups.setOnAction( event -> viewModel.removeGroupKeepSubgroups(group)); MenuItem removeSubgroups = new MenuItem(Localization.lang("Remove subgroups")); removeSubgroups.setOnAction( event -> viewModel.removeSubgroups(group)); MenuItem addEntries = new MenuItem(Localization.lang("Add selected entries to this group")); addEntries.setOnAction( event -> viewModel.addSelectedEntries(group)); MenuItem removeEntries = new MenuItem(Localization.lang("Remove selected entries from this group")); removeEntries.setOnAction( event -> viewModel.removeSelectedEntries(group)); MenuItem sortAlphabetically = new MenuItem(Localization.lang("Sort all subgroups (recursively)")); sortAlphabetically.setOnAction( event -> viewModel.sortAlphabeticallyRecursive(group)); menu.getItems().add(editGroup); menu.getItems().add(new SeparatorMenuItem()); menu.getItems().addAll(addSubgroup, removeSubgroups, removeGroupAndSubgroups, removeGroupKeepSubgroups); menu.getItems().add(new SeparatorMenuItem()); menu.getItems().addAll(addEntries, removeEntries); menu.getItems().add(new SeparatorMenuItem()); menu.getItems().add(sortAlphabetically); return menu; }
Example 2
Project: Cachoeira-master File: MainMenuBar.java View source code |
private Menu createProjectMenu() {
createProject = new MenuItem("Create");
createProject.setAccelerator(new KeyCodeCombination(KeyCode.N, KeyCombination.CONTROL_DOWN));
openProject = new MenuItem("Open");
openProject.setAccelerator(new KeyCodeCombination(KeyCode.O, KeyCombination.CONTROL_DOWN));
saveProject = new MenuItem("Save");
saveProject.setAccelerator(new KeyCodeCombination(KeyCode.S, KeyCombination.CONTROL_DOWN));
saveAsProject = new MenuItem("Save as");
saveAsProject.setAccelerator(new KeyCodeCombination(KeyCode.S, KeyCombination.SHIFT_DOWN, KeyCombination.CONTROL_DOWN));
Menu resourcesMenu = new Menu("Resources");
exportResources = new MenuItem("Export");
importResources = new MenuItem("Import");
resourcesMenu.getItems().addAll(exportResources, importResources);
exit = new MenuItem("Exit");
Menu projectMenu = new Menu("Project");
projectMenu.getItems().addAll(createProject, openProject, saveProject, saveAsProject, resourcesMenu, new SeparatorMenuItem(), exit);
return projectMenu;
}
Example 3
Project: autopsy-master File: ListTimeline.java View source code |
@NbBundle.Messages({ "ListChart.errorMsg=There was a problem getting the content for the selected event." })
@Override
protected void updateItem(CombinedEvent item, boolean empty) {
CombinedEvent oldItem = getItem();
if (oldItem != null) {
visibleEvents.remove(oldItem);
}
super.updateItem(item, empty);
if (empty || item == null) {
event = null;
} else {
visibleEvents.add(item);
event = controller.getEventsModel().getEventById(item.getRepresentativeEventID());
setOnContextMenuRequested( contextMenuEvent -> {
try {
EventNode node = EventNode.createEventNode(item.getRepresentativeEventID(), controller.getEventsModel());
List<MenuItem> menuItems = new ArrayList<>();
for (Action action : node.getActions(false)) {
if (action == null) {
menuItems.add(new SeparatorMenuItem());
} else {
String actionName = Objects.toString(action.getValue(Action.NAME));
if (Arrays.asList("&Properties", "Tools").contains(actionName) == false) {
if (action instanceof Presenter.Popup) {
JMenuItem submenu = ((Presenter.Popup) action).getPopupPresenter();
menuItems.add(SwingFXMenuUtils.createFXMenu(submenu));
} else {
menuItems.add(SwingFXMenuUtils.createFXMenu(new Actions.MenuItem(action, false)));
}
}
}
}
;
new ContextMenu(menuItems.toArray(new MenuItem[menuItems.size()])).show(this, contextMenuEvent.getScreenX(), contextMenuEvent.getScreenY());
} catch (IllegalStateException ex) {
LOGGER.log(Level.SEVERE, "There was no case open to lookup the Sleuthkit object backing a SingleEvent.", ex);
} catch (TskCoreException ex) {
LOGGER.log(Level.SEVERE, "Failed to lookup Sleuthkit object backing a SingleEvent.", ex);
Platform.runLater(() -> {
Notifications.create().owner(getScene().getWindow()).text(Bundle.ListChart_errorMsg()).showError();
});
}
});
}
}
Example 4
Project: mzmine3-master File: FeatureTableMenu.java View source code |
/** * Create a custom menu. * * @param table * @return contextMenu */ private static ContextMenu createContextMenu(TreeTableView<FeatureTableRow> table) { // New context menu ContextMenu cm = new ContextMenu(); CustomMenuItem cmi; // Select all item Label selectAll = new Label("Select all"); selectAll.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { for (Object obj : table.getColumns()) { ((TreeTableColumn<?, ?>) obj).setVisible(true); } } }); cmi = new CustomMenuItem(selectAll); cmi.setHideOnClick(false); cm.getItems().add(cmi); // Deselect all item Label deselectAll = new Label("Deselect all"); deselectAll.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { for (Object obj : table.getColumns()) { ((TreeTableColumn<?, ?>) obj).setVisible(false); } } }); cmi = new CustomMenuItem(deselectAll); cmi.setHideOnClick(false); cm.getItems().add(cmi); // Separator cm.getItems().add(new SeparatorMenuItem()); // Variables Boolean sampleColumns = false; // menu item for each of the available columns for (Object obj : table.getColumns()) { TreeTableColumn<?, ?> tableColumn = (TreeTableColumn<?, ?>) obj; int childrenColumns = tableColumn.getColumns().size(); CheckBox cb; if (childrenColumns != 0 && !sampleColumns) { sampleColumns = true; // Separator cm.getItems().add(new SeparatorMenuItem()); // Sample specific columns for (TreeTableColumn<?, ?> col : tableColumn.getColumns()) { cb = new CheckBox("Sample: " + col.getText()); // Bind to all equal sample specific columns for (Object obj2 : table.getColumns()) { TreeTableColumn<?, ?> tableColumn2 = (TreeTableColumn<?, ?>) obj2; int childrenColumns2 = tableColumn2.getColumns().size(); if (childrenColumns2 != 0) { for (TreeTableColumn<?, ?> col2 : tableColumn2.getColumns()) { if (col.getText().equals(col2.getText())) { cb.selectedProperty().bindBidirectional(col2.visibleProperty()); // cb.setSelected(true); // cb.selectedProperty().addListener( // new ChangeListener<Boolean>() { // public void changed( // ObservableValue<? extends Boolean> ov, // Boolean old_val, // Boolean new_val) { // col2.setVisible(new_val); // } // }); } } } } cmi = new CustomMenuItem(cb); cmi.setHideOnClick(false); cm.getItems().add(cmi); } // Separator cm.getItems().add(new SeparatorMenuItem()); } if (childrenColumns == 0) { cb = new CheckBox(tableColumn.getText()); cb.selectedProperty().bindBidirectional(tableColumn.visibleProperty()); cmi = new CustomMenuItem(cb); cmi.setHideOnClick(false); cm.getItems().add(cmi); } } return cm; }
Example 5
Project: itol-master File: IssueTaskPane.java View source code |
/**
* Update menu items of button "Assign".
*/
private void initMenuItemsOfButtonAssign() {
try {
ObservableList<MenuItem> items = bnAssignSelection.getItems();
items.remove(1, items.size());
if (!issue.isNew()) {
IssueService srv = Globals.getIssueService();
final String resourceText = resb.getString("bnCreateSubtask.text");
boolean hasSeparator = false;
for (IdName subtaskType : srv.getSubtaskTypes(issue)) {
if (!hasSeparator) {
items.add(new SeparatorMenuItem());
hasSeparator = true;
}
MenuItem mnCreateSubtask = new MenuItem();
mnCreateSubtask.setText(MessageFormat.format(resourceText, subtaskType.getName()));
mnCreateSubtask.setGraphic(new ImageView(subtaskType.getImage()));
mnCreateSubtask.setOnAction(( e) -> {
onCreateSubtask(subtaskType);
});
items.add(mnCreateSubtask);
}
}
} catch (Exception e) {
}
}
Example 6
Project: jskat-multimodule-master File: JSkatMenuFactory.java View source code |
/** * Builds the menu. * * @return Menu for JSkat */ public static MenuBar build() { JSkatResourceBundle strings = JSkatResourceBundle.INSTANCE; MenuBar menuBar = new MenuBar(); Menu fileMenu = new Menu(strings.getString("file")); MenuItem loadSeriesMenuItem = new MenuItem(strings.getString("load_series")); loadSeriesMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.LOAD, IconSize.SMALL)); MenuItem saveSeriesMenuItem = new MenuItem(strings.getString("save_series")); saveSeriesMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.SAVE, IconSize.SMALL)); MenuItem saveSeriesAsMenuItem = new MenuItem(strings.getString("save_series_as")); saveSeriesAsMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.SAVE_AS, IconSize.SMALL)); MenuItem exitJSkatMenuItem = new MenuItem(strings.getString("exit_jskat")); exitJSkatMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.EXIT, IconSize.SMALL)); exitJSkatMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.exitJSkat()); fileMenu.getItems().addAll(loadSeriesMenuItem, saveSeriesMenuItem, saveSeriesAsMenuItem, new SeparatorMenuItem(), exitJSkatMenuItem); Menu skatTableMenu = new Menu(strings.getString("skat_table")); //$NON-NLS-1$ MenuItem playOnLocalTable = new MenuItem(strings.getString("play_on_local_table")); playOnLocalTable.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.TABLE, IconSize.SMALL)); playOnLocalTable.setOnAction( actionEvent -> JSkatMaster.INSTANCE.createTable()); //$NON-NLS-1$ MenuItem startSkatSeriesMenuItem = new MenuItem(strings.getString("start_series")); startSkatSeriesMenuItem.setOnAction( actionEvent -> JSkatEventBus.INSTANCE.post(new CreateSkatSeriesCommand())); startSkatSeriesMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.PLAY, IconSize.SMALL)); MenuItem replayGameMenuItem = new MenuItem(strings.getString("replay_game")); replayGameMenuItem.setOnAction( actionEvent -> JSkatEventBus.TABLE_EVENT_BUSSES.get(JSkatApplicationData.INSTANCE.getActiveTable()).post(new ReplayGameCommand())); replayGameMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.FIRST, IconSize.SMALL)); MenuItem nextReplayMoveMenuItem = new MenuItem(strings.getString("next_replay_move")); nextReplayMoveMenuItem.setOnAction( actionEvent -> JSkatEventBus.TABLE_EVENT_BUSSES.get(JSkatApplicationData.INSTANCE.getActiveTable()).post(new NextReplayMoveCommand())); nextReplayMoveMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.NEXT, IconSize.SMALL)); skatTableMenu.getItems().addAll(playOnLocalTable, new SeparatorMenuItem(), startSkatSeriesMenuItem, new SeparatorMenuItem(), replayGameMenuItem, nextReplayMoveMenuItem); Menu neuralNetworksMenu = new Menu(strings.getString("neural_networks")); MenuItem loadNeuralNetworksMenuItem = new MenuItem(strings.getString("load_nn")); loadNeuralNetworksMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.LOAD, IconSize.SMALL)); loadNeuralNetworksMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.loadNeuralNetworks()); MenuItem saveNeuralNetworksMenuItem = new MenuItem(strings.getString("save_nn")); saveNeuralNetworksMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.SAVE, IconSize.SMALL)); saveNeuralNetworksMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.saveNeuralNetworks()); MenuItem resetNeuralNetworksMenuItem = new MenuItem(strings.getString("reset_nn")); resetNeuralNetworksMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.resetNeuralNetworks()); resetNeuralNetworksMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.UNDO, IconSize.SMALL)); MenuItem trainNeuralNetworksMenuItem = new MenuItem(strings.getString("train_nn")); trainNeuralNetworksMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.trainNeuralNetworks()); trainNeuralNetworksMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.TRAIN_NN, IconSize.SMALL)); MenuItem stopTrainNeuralNetworksMenuItem = new MenuItem(strings.getString("stop_train_nn")); stopTrainNeuralNetworksMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.stopTrainNeuralNetworks()); stopTrainNeuralNetworksMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.PAUSE, IconSize.SMALL)); neuralNetworksMenu.getItems().addAll(loadNeuralNetworksMenuItem, saveNeuralNetworksMenuItem, new SeparatorMenuItem(), resetNeuralNetworksMenuItem, trainNeuralNetworksMenuItem, stopTrainNeuralNetworksMenuItem); Menu issMenu = new Menu(strings.getString("iss")); MenuItem playOnIssMenuItem = new MenuItem(strings.getString("play_on_iss")); playOnIssMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.getIssController().showISSLoginPanel()); playOnIssMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.CONNECT_ISS, IconSize.SMALL)); MenuItem createNewTableOnIssMenuItem = new MenuItem(strings.getString("new_table")); createNewTableOnIssMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.getIssController().requestTableCreation()); createNewTableOnIssMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.TABLE, IconSize.SMALL)); MenuItem invitePlayerMenuItem = new MenuItem(strings.getString("invite")); invitePlayerMenuItem.setOnAction( actionEvent -> JSkatMaster.INSTANCE.invitePlayer()); invitePlayerMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.INVITE, IconSize.SMALL)); issMenu.getItems().addAll(playOnIssMenuItem, new SeparatorMenuItem(), createNewTableOnIssMenuItem, invitePlayerMenuItem); Menu extrasMenu = new Menu(strings.getString("extras")); MenuItem preferencesMenuItem = new MenuItem(strings.getString("preferences")); preferencesMenuItem.setOnAction( actionEvent -> JSkatEventBus.INSTANCE.post(new ShowPreferencesCommand())); preferencesMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.PREFERENCES, IconSize.SMALL)); extrasMenu.getItems().addAll(preferencesMenuItem); Menu helpMenu = new Menu(strings.getString("help")); MenuItem helpMenuItem = new MenuItem(strings.getString("help")); helpMenuItem.setOnAction( actionEvent -> JSkatEventBus.INSTANCE.post(new ShowHelpCommand())); helpMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.HELP, IconSize.SMALL)); MenuItem licenseMenuItem = new MenuItem(strings.getString("license")); licenseMenuItem.setOnAction( actionEvent -> JSkatEventBus.INSTANCE.post(new ShowLicenseCommand())); licenseMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.LICENSE, IconSize.SMALL)); MenuItem aboutMenuItem = new MenuItem(strings.getString("about")); aboutMenuItem.setOnAction( actionEvent -> JSkatEventBus.INSTANCE.post(new ShowAboutInformationCommand())); aboutMenuItem.setGraphic(JSkatGraphicRepository.INSTANCE.getImageView(Icon.ABOUT, IconSize.SMALL)); helpMenu.getItems().addAll(helpMenuItem, new SeparatorMenuItem(), licenseMenuItem, aboutMenuItem); menuBar.getMenus().addAll(fileMenu, skatTableMenu, neuralNetworksMenu, issMenu, extrasMenu, helpMenu); return menuBar; }
Example 7
Project: geotoolkit-master File: ProgressMonitor.java View source code |
/**
* Fill panel with currently submitted tasks. Add listeners on
* {@link TaskManager} to be aware of new events.
*/
private void initTasks() {
final MenuItem clearErrorItem = new MenuItem(GeotkFX.getString(ProgressMonitor.class, "cleanErrorList"));
clearErrorItem.setOnAction( evt -> taskRegistry.getTasksInError().clear());
final Label icon = new Label(FontAwesomeIcons.ICON_TRASH_O);
icon.setStyle(ICON_LABEL_FONT_FAMILY);
clearErrorItem.setGraphic(icon);
clearErrorItem.getStyleClass().add(CLEAR_MENU_ITEM_CSS_CLASS);
tasksInError.getItems().add(clearErrorItem);
tasksInError.getItems().add(new SeparatorMenuItem());
// Listen on current running tasks
final ObservableList<Task> tmpSubmittedTasks = taskRegistry.getSubmittedTasks();
tmpSubmittedTasks.addListener((ListChangeListener.Change<? extends Task> c) -> {
final Set<Task> toAdd = new HashSet<>();
final Set<Task> toRemove = new HashSet<>();
storeChanges(c, toAdd, toRemove);
Platform.runLater(() -> {
for (final Task task : toAdd) {
final CustomMenuItem item = new CustomMenuItem(new TaskProgress(task));
item.setHideOnClick(false);
runningTasks.getItems().add(item);
}
// remove Ended tasks
runningTasks.getItems().removeIf(new GetItemsForTask(toRemove));
});
});
// Check failed tasks.
final ObservableList<Task> tmpTasksInError = taskRegistry.getTasksInError();
tmpTasksInError.addListener((ListChangeListener.Change<? extends Task> c) -> {
final Set<Task> toAdd = new HashSet<>();
final Set<Task> toRemove = new HashSet<>();
storeChanges(c, toAdd, toRemove);
Platform.runLater(() -> {
for (final Task task : toAdd) {
tasksInError.getItems().add(new ErrorMenuItem(task));
}
// remove Ended tasks
tasksInError.getItems().removeIf(new GetItemsForTask(toRemove));
});
});
final Runnable initPanel = () -> {
final int nbSubmitted = tmpSubmittedTasks.size();
// do not add last task to our menu, it will be used on main display.
for (int i = 0; i < nbSubmitted; i++) {
final CustomMenuItem item = new CustomMenuItem(new TaskProgress(tmpSubmittedTasks.get(i)));
item.setHideOnClick(false);
runningTasks.getItems().add(item);
}
for (final Task t : tmpTasksInError) {
tasksInError.getItems().add(new ErrorMenuItem(t));
}
};
if (Platform.isFxApplicationThread()) {
initPanel.run();
} else {
Platform.runLater(initPanel);
}
}
Example 8
Project: jubula.core-master File: MenuItemAdapter.java View source code |
@Override
public boolean isSeparator() {
final MenuItem item = getRealComponent();
return //$NON-NLS-1$
EventThreadQueuerJavaFXImpl.invokeAndWait(//$NON-NLS-1$
"hasSubMenu", new Callable<Boolean>() {
@Override
public Boolean call() throws Exception {
return item instanceof SeparatorMenuItem;
}
});
}
Example 9
Project: mqtt-spy-master File: ContextMenuUtils.java View source code |
/** * Create context menu for the subscription tab. * * @param connection The connection associated with the tab * @param subscription The subscription associated with the tab * @param eventManager The global event manager * @param subscriptionManager The connection's subscription manager * @param configurationManager The global configuration manager * @param subscriptionController The subscription controller for this subscription * * @return The created context menu */ public static ContextMenu createSubscriptionTabContextMenu(final MqttAsyncConnection connection, final MqttSubscription subscription, final IKBus eventBus, final SubscriptionManager subscriptionManager, final ConfigurationManager configurationManager, final SubscriptionController subscriptionController) { final ContextMenu contextMenu = new ContextMenu(); // Cancel MenuItem cancelItem = new MenuItem("Unsubscribe (and keep the tab)"); cancelItem.setDisable(false); cancelItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { connection.unsubscribe(subscription, true); } }); contextMenu.getItems().add(cancelItem); // Re-subscribe MenuItem resubscribeItem = new MenuItem("Re-subscribe"); resubscribeItem.setDisable(true); resubscribeItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { connection.resubscribe(subscription); } }); contextMenu.getItems().add(resubscribeItem); // Close MenuItem closeItem = new MenuItem("Unsubscribe (and close tab)"); closeItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { subscriptionManager.removeSubscription(subscription.getTopic()); } }); contextMenu.getItems().add(closeItem); // Separator contextMenu.getItems().add(new SeparatorMenuItem()); // Copy subscription topic string final MenuItem copyTopicItem = new MenuItem("Copy subscription topic to clipboard"); copyTopicItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { UiUtils.copyToClipboard(subscription.getTopic()); } }); contextMenu.getItems().add(copyTopicItem); // Separator contextMenu.getItems().add(new SeparatorMenuItem()); // Clear data MenuItem clearItem = new MenuItem("Clear subscription history"); clearItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { eventBus.publish(new ClearTabEvent(subscription.getStore())); // eventManager.notifyClearHistory(subscription.getStore()); StatisticsManager.resetMessagesReceived(connection.getId(), subscription.getTopic()); subscription.getStore().clear(); } }); contextMenu.getItems().add(clearItem); // Separator contextMenu.getItems().add(new SeparatorMenuItem()); final Menu chartsMenu = new Menu("Charts"); contextMenu.getItems().add(chartsMenu); // Message load charts MenuItem messageLoadChartItem = new MenuItem("Show message load chart"); messageLoadChartItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { new ChartFactory<FormattedMqttMessage>().createMessageBasedLineChart(Arrays.asList(SubscriptionController.AVG5_TOPIC, SubscriptionController.AVG30_TOPIC, SubscriptionController.AVG300_TOPIC), subscriptionController.getStatsHistory(), ChartMode.USER_DRIVEN_MSG_PAYLOAD, "Series", "Load", "msgs/s", "Message load statistics for " + subscription.getTopic() + " - " + connection.getName(), subscriptionController.getScene(), eventBus); } }); chartsMenu.getItems().add(messageLoadChartItem); // Message count charts MenuItem messageCountChartItem = new MenuItem("Show message count chart"); messageCountChartItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { new ChartFactory<FormattedMqttMessage>().createMessageBasedPieChart("Message count statistics for " + subscription.getTopic(), subscriptionController.getScene(), subscriptionController.getSubscription().getStore().getNonFilteredMessageList().getTopicSummary().getObservableMessagesPerTopic()); } }); chartsMenu.getItems().add(messageCountChartItem); final Menu configuration = new Menu("Configuration"); contextMenu.getItems().add(configuration); // Separator // configuration.getItems().add(new SeparatorMenuItem()); // Adds/updates this subscription in the configuration file final MenuItem addItem = new MenuItem("Add/update this subscription"); addItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { configurationManager.updateSubscriptionConfiguration(connection, subscription); } }); configuration.getItems().add(addItem); // Removes this subscription from the configuration file final MenuItem removeItem = new MenuItem("Remove this subscription"); removeItem.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { configurationManager.deleteSubscriptionConfiguration(connection, subscription); } }); configuration.getItems().add(removeItem); final Menu view = new Menu("View"); contextMenu.getItems().add(view); // Change color final MenuItem changeColorMenu = new MenuItem("Change tab color"); changeColorMenu.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { final Color newColor = DialogFactory.createColorChoiceDialog(subscription.getColor(), "Select new subscription color", "Subscription color: "); if (!newColor.equals(subscription.getColor())) { subscription.setColor(newColor); subscription.getSubscriptionController().getTab().setStyle(StylingUtils.createBaseRGBString(newColor)); // Update subscription tab subscription.getSubscriptionController().getSummaryTablePaneController().refreshRowStyling(); // Update 'all' tab subscriptionManager.getSubscriptionControllersMap().get(SubscriptionManager.ALL_SUBSCRIPTIONS_TAB_TITLE).getSummaryTablePaneController().refreshRowStyling(); } } }); view.getItems().add(changeColorMenu); // View final MenuItem detachMenu = new MenuItem("Detach to a separate window"); detachMenu.setOnAction(TabUtils.createTabDetachEvent(detachMenu, subscriptionController, connection.getName() + " - " + subscription.getTopic(), 5)); view.getItems().add(detachMenu); return contextMenu; }
Example 10
Project: orson-charts-master File: Chart3DViewer.java View source code |
/** * Creates the context menu. * * @return The context menu. */ private ContextMenu createContextMenu() { final ContextMenu menu = new ContextMenu(); MenuItem zoomIn = new MenuItem("Zoom In"); zoomIn.setOnAction( e -> { handleZoom(this.zoomMultiplier); }); MenuItem zoomOut = new MenuItem("Zoom Out"); zoomOut.setOnAction( e -> { handleZoom(1.0 / this.zoomMultiplier); }); MenuItem zoomToFit = new MenuItem("Zoom To Fit"); zoomToFit.setOnAction( e -> { handleZoomToFit(); }); SeparatorMenuItem separator = new SeparatorMenuItem(); Menu export = new Menu("Export As"); MenuItem pngItem = new MenuItem("PNG..."); pngItem.setOnAction( e -> { handleExportToPNG(); }); export.getItems().add(pngItem); MenuItem jpegItem = new MenuItem("JPEG..."); jpegItem.setOnAction( e -> { handleExportToJPEG(); }); export.getItems().add(jpegItem); // provide a PDF export menu item if (ExportFormats.isOrsonPDFAvailable()) { MenuItem pdfItem = new MenuItem("PDF..."); pdfItem.setOnAction( e -> { handleExportToPDF(); }); export.getItems().add(pdfItem); } // provide a SVG export menu item if (ExportFormats.isJFreeSVGAvailable()) { MenuItem svgItem = new MenuItem("SVG..."); svgItem.setOnAction( e -> { handleExportToSVG(); }); export.getItems().add(svgItem); } menu.getItems().addAll(zoomIn, zoomOut, zoomToFit, separator, export); return menu; }
Example 11
Project: erlyberly-master File: TopBarView.java View source code |
@Override
public void initialize(URL url, ResourceBundle r) {
topBox.getItems().add(crashReportsButton);
// TODO: Should we hide these buttons, when disconnected ?
hideProcessesButton.setGraphic(FAIcon.create().icon(AwesomeIcon.RANDOM));
hideProcessesButton.setContentDisplay(ContentDisplay.TOP);
hideProcessesButton.setGraphicTextGap(0d);
hideProcessesButton.setTooltip(new Tooltip("Show/Hide the Processes (ctrl+p)"));
// TODO: Should we hide these buttons, when disconnected ?
hideFunctionsButton.setGraphic(FAIcon.create().icon(AwesomeIcon.CUBE));
hideFunctionsButton.setContentDisplay(ContentDisplay.TOP);
hideFunctionsButton.setGraphicTextGap(0d);
hideFunctionsButton.setTooltip(new Tooltip("Show/Hide the Modules (ctrl+m)"));
refreshModulesButton.setGraphic(FAIcon.create().icon(AwesomeIcon.ROTATE_LEFT));
refreshModulesButton.setContentDisplay(ContentDisplay.TOP);
refreshModulesButton.setGraphicTextGap(0d);
refreshModulesButton.setTooltip(new Tooltip("Refresh Modules and Functions to show new, hot-loaded code (ctrl+r)"));
refreshModulesButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not());
erlangMemoryButton.setGraphic(FAIcon.create().icon(AwesomeIcon.PIE_CHART));
erlangMemoryButton.setContentDisplay(ContentDisplay.TOP);
erlangMemoryButton.setGraphicTextGap(0d);
erlangMemoryButton.setTooltip(new Tooltip("Refresh Modules and Functions to show new, hot-loaded code (ctrl+r)"));
erlangMemoryButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not());
// TODO: maybe make this button available, sometimes, there are crashes causing the node to go down,
// and then it's disabled when disconnected....( i would like to see the crashes ) :)
crashReportsButton.setGraphic(crashReportsGraphic());
crashReportsButton.setContentDisplay(ContentDisplay.LEFT);
crashReportsButton.setGraphicTextGap(0d);
crashReportsButton.setTooltip(new Tooltip("View crash reports received from the connected node."));
// disable the button if we're not connected or there are no crash report menu items
crashReportsButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not().or(Bindings.size(crashReportsButton.getItems()).isEqualTo(2)));
crashReportsButton.setStyle("-fx-font-size: 10; -fx-padding: 5 5 5 5;");
crashReportsButton.getItems().addAll(removeCrashReportsMenuItem(), new SeparatorMenuItem());
ErlyBerly.nodeAPI().getCrashReports().addListener((ListChangeListener.Change<? extends OtpErlangObject> e) -> {
while (e.next()) {
for (OtpErlangObject obj : e.getAddedSubList()) {
CrashReport crashReport = new CrashReport(obj);
MenuItem menuItem;
menuItem = new MenuItem();
menuItem.setGraphic(new CrashReportGraphic(crashReport));
menuItem.setOnAction(( action) -> {
unreadCrashReportsProperty.set(0);
ErlyBerly.showPane("Crash Report", ErlyBerly.wrapInPane(crashReportView(crashReport)));
});
crashReportsButton.getItems().add(menuItem);
}
}
});
xrefAnalysisButton.setGraphic(xrefAnalysisGraphic());
xrefAnalysisButton.setContentDisplay(ContentDisplay.TOP);
xrefAnalysisButton.setGraphicTextGap(0d);
xrefAnalysisButton.setTooltip(new Tooltip("Start xref analysis. This may take a while, an ok is displayed when complete."));
xrefAnalysisButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not().or(isXrefAnalysing).or(ErlyBerly.nodeAPI().xrefStartedProperty()));
xrefAnalysisButton.setOnAction(( e) -> {
try {
ErlyBerly.nodeAPI().asyncEnsureXRefStarted();
isXrefAnalysing.set(true);
} catch (Exception e1) {
e1.printStackTrace();
}
});
disconnectButton.setGraphic(FAIcon.create().icon(AwesomeIcon.EJECT));
disconnectButton.setContentDisplay(ContentDisplay.TOP);
disconnectButton.setGraphicTextGap(0d);
disconnectButton.setTooltip(new Tooltip("Disconnect"));
disconnectButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not());
disconnectButton.setOnAction(( e) -> {
try {
disconnect();
} catch (Exception e1) {
e1.printStackTrace();
}
});
prefButton.setGraphic(FAIcon.create().icon(AwesomeIcon.GEARS));
prefButton.setContentDisplay(ContentDisplay.TOP);
prefButton.setGraphicTextGap(0d);
prefButton.setTooltip(new Tooltip("Preferences"));
prefButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not());
prefButton.setOnAction(( e) -> {
displayPreferencesPane();
});
suspendButton.setContentDisplay(ContentDisplay.TOP);
suspendButton.setGraphicTextGap(0d);
suspendButton.setTooltip(new Tooltip("Toggle Trace Suspension"));
suspendButton.disableProperty().bind(ErlyBerly.nodeAPI().connectedProperty().not());
suspendButton.setOnAction(( e) -> {
suspendTraces();
});
// set the default text and icon
onSuspendedStateChanged(false);
// listen to when tracing is suspend or not, and update the button text and icon
ErlyBerly.nodeAPI().suspendedProperty().addListener(( o, oldv, suspended) -> {
onSuspendedStateChanged(suspended);
});
hideProcsProperty().addListener((Observable o) -> {
toggleHideProcs();
});
hideFunctionsProperty().addListener((Observable o) -> {
toggleHideFuncs();
});
erlangMemoryButton.setOnAction(( e) -> {
showErlangMemory();
});
FxmlLoadable loader = processCountStat();
topBox.getItems().add(new Separator(Orientation.VERTICAL));
topBox.getItems().add(loader.fxmlNode);
// let's store the ui preferences, as the end user changes them...
PrefBind.bindBoolean("hideProcesses", hideProcessesButton.selectedProperty());
PrefBind.bindBoolean("hideModules", hideFunctionsButton.selectedProperty());
boolean hideProcs = PrefBind.getOrDefaultBoolean("hideProcesses", false);
boolean hideMods = PrefBind.getOrDefaultBoolean("hideModules", false);
if (hideProcs) {
// click the hide button manually.
hideProcessesButton.setSelected(true);
}
if (hideMods) {
// click the hide button manually.
hideFunctionsButton.setSelected(true);
}
toggleHideProcs();
toggleHideFuncs();
ErlyBerly.nodeAPI().getCrashReports().addListener(this::traceLogsChanged);
ErlyBerly.nodeAPI().xrefStartedProperty().addListener(( e, oldv, newv) -> {
if (newv)
isXrefAnalysing.set(false);
});
}
Example 12
Project: Augendiagnose-master File: DisplayImageController.java View source code |
/**
* Create the context menu of an overlay button.
*
* @param position
* The position of the button.
* @param forNewButton
* Flag indicating the popup is displayed for a new button. Then it is enforced to select a new overlay.
* @return the context menu.
*/
private ContextMenu createOverlayButtonContextMenu(final int position, final boolean forNewButton) {
ToggleButton button = mOverlayButtons[position];
ContextMenu menu = new ContextMenu();
if (position == getHighestOverlayButtonIndex()) {
if (position > 1) {
MenuItem menuItemRemove = new MenuItem();
menuItemRemove.setText(ResourceUtil.getString(ResourceConstants.MENU_REMOVE_OVERLAY_BUTTON));
menuItemRemove.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(final ActionEvent event) {
mOverlayButtons[position].setSelected(false);
handleBtnOverlayPressed(mOverlayButtons[position]);
PreferenceUtil.setIndexedPreference(KEY_INDEXED_OVERLAY_TYPE, position, -1);
mOverlayButtons[position].setVisible(false);
mOverlayButtons[position].setManaged(false);
createOverlayButtonContextMenus();
}
});
menu.getItems().add(menuItemRemove);
}
if (position < OVERLAY_BUTTON_COUNT) {
MenuItem menuItemAdd = new MenuItem();
menuItemAdd.setText(ResourceUtil.getString(ResourceConstants.MENU_ADD_OVERLAY_BUTTON));
menuItemAdd.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(final ActionEvent event) {
ContextMenu contextMenu = createOverlayButtonContextMenu(position + 1, true);
contextMenu.show(button, menu.getAnchorX(), menu.getAnchorY());
}
});
menu.getItems().add(menuItemAdd);
}
menu.getItems().add(new SeparatorMenuItem());
}
MenuItem[] secondaryMenuItems = new MenuItem[OVERLAY_BUTTON_COUNT];
for (int i = 1; i <= OVERLAY_COUNT; i++) {
final int index = i;
final Integer oldButtonPosition = getButtonForOverlayWithIndex(i);
MenuItem menuItem = null;
if (oldButtonPosition == null) {
menuItem = new MenuItem();
menuItem.setText(OVERLAY_NAMES[i - 1]);
menu.getItems().add(menuItem);
} else {
if (!forNewButton) {
menuItem = new MenuItem();
menuItem.setText(OVERLAY_BUTTON_STRINGS[oldButtonPosition - 1] + " " + OVERLAY_NAMES[i - 1]);
if (oldButtonPosition == position) {
menuItem.getStyleClass().add("bold");
}
secondaryMenuItems[oldButtonPosition - 1] = menuItem;
}
}
if (menuItem != null) {
menuItem.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(final ActionEvent event) {
if (oldButtonPosition != null && oldButtonPosition != position) {
// If the same overlay is already used, switch overlays
int currentOverlay = PreferenceUtil.getIndexedPreferenceInt(KEY_INDEXED_OVERLAY_TYPE, position, -1);
PreferenceUtil.setIndexedPreference(KEY_INDEXED_OVERLAY_TYPE, oldButtonPosition, currentOverlay);
}
PreferenceUtil.setIndexedPreference(KEY_INDEXED_OVERLAY_TYPE, position, index);
mOverlayButtons[position].setSelected(true);
mOverlayButtons[position].setVisible(true);
mOverlayButtons[position].setManaged(true);
handleBtnOverlayPressed(mOverlayButtons[position]);
createOverlayButtonContextMenus();
}
});
}
}
for (MenuItem menuItem : secondaryMenuItems) {
if (menuItem != null) {
menu.getItems().add(menuItem);
}
}
return menu;
}
Example 13
Project: FXDesktopSearch-master File: Undecorator.java View source code |
/** * Manage buttons and menu items */ void initDecoration() { MenuItem minimizeMenuItem = null; // Menu final ContextMenu contextMenu = new ContextMenu(); contextMenu.setAutoHide(true); if (minimize != null) { // Utility Stage minimizeMenuItem = new MenuItem(LOC.getString("Minimize")); minimizeMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.M, KeyCombination.SHORTCUT_DOWN)); minimizeMenuItem.setOnAction( e -> switchMinimize()); contextMenu.getItems().add(minimizeMenuItem); } if (maximize != null && stage.isResizable()) { // Utility Stage type maximizeMenuItem = new MenuItem(LOC.getString("Maximize")); maximizeMenuItem.setOnAction( e -> { switchMaximize(); contextMenu.hide(); }); contextMenu.getItems().addAll(maximizeMenuItem, new SeparatorMenuItem()); } // Fullscreen if (stageStyle != StageStyle.UTILITY && stage.isResizable()) { fullScreenMenuItem = new CheckMenuItem(LOC.getString("FullScreen")); fullScreenMenuItem.setOnAction( e -> switchFullscreen()); fullScreenMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.F, KeyCombination.CONTROL_DOWN, KeyCombination.SHORTCUT_DOWN)); contextMenu.getItems().addAll(fullScreenMenuItem, new SeparatorMenuItem()); } // Close MenuItem closeMenuItem = new MenuItem(LOC.getString("Close")); closeMenuItem.setOnAction( e -> switchClose()); closeMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.W, KeyCombination.SHORTCUT_DOWN)); contextMenu.getItems().add(closeMenuItem); menu.setOnMousePressed( t -> { if (contextMenu.isShowing()) { contextMenu.hide(); } else { contextMenu.show(menu, Side.BOTTOM, 0, 0); } }); // Close button close.setTooltip(new Tooltip(LOC.getString("Close"))); close.setOnAction( t -> switchClose()); // Maximize button // If changed via contextual menu maximizeProperty().addListener(( ov, t, t1) -> { Tooltip tooltip = maximize.getTooltip(); if (tooltip.getText().equals(LOC.getString("Maximize"))) { tooltip.setText(LOC.getString("Restore")); maximizeMenuItem.setText(LOC.getString("Restore")); maximize.getStyleClass().add("decoration-button-restore"); resize.setVisible(false); } else { tooltip.setText(LOC.getString("Maximize")); maximizeMenuItem.setText(LOC.getString("Maximize")); maximize.getStyleClass().remove("decoration-button-restore"); resize.setVisible(true); } }); if (maximize != null) { // Utility Stage maximize.setTooltip(new Tooltip(LOC.getString("Maximize"))); maximize.setOnAction( t -> switchMaximize()); } if (fullscreen != null) { // Utility Stage fullscreen.setTooltip(new Tooltip(LOC.getString("FullScreen"))); fullscreen.setOnAction( t -> switchFullscreen()); } // Minimize button if (minimize != null) { // Utility Stage minimize.setTooltip(new Tooltip(LOC.getString("Minimize"))); minimize.setOnAction( t -> switchMinimize()); } // Transfer stage title to undecorator tiltle label title.setText(stage.getTitle()); }
Example 14
Project: jvarkit-master File: NgsStage.java View source code |
public void show() {
final Stage dialog = new Stage();
dialog.setResizable(true);
dialog.setTitle("Bioalcidae for " + getNgsFile().getSource());
final VBox contentPane = new VBox(5);
VBox.setVgrow(contentPane, Priority.ALWAYS);
final Menu fileMenu = new Menu("File");
MenuItem menu = new MenuItem("Save script as...");
menu.setOnAction( AE -> {
});
fileMenu.getItems().add(menu);
menu = new MenuItem("Load Script ...");
menu.setOnAction( AE -> {
actionLoadScript(dialog, this.scriptArea);
});
fileMenu.getItems().add(menu);
menu = new MenuItem("Validate Script ...");
menu.setOnAction( AE -> {
actionValidateScript(dialog, this.scriptArea);
});
fileMenu.getItems().add(menu);
menu = new MenuItem("Run To File");
menu.setOnAction( AE -> {
execute(dialog, true);
});
fileMenu.getItems().add(menu);
menu = new MenuItem("Run To Dialog");
menu.setOnAction( AE -> {
execute(dialog, false);
});
fileMenu.getItems().add(menu);
fileMenu.getItems().add(new SeparatorMenuItem());
menu = new MenuItem("Close");
menu.setOnAction( AE -> {
dialog.hide();
});
fileMenu.getItems().add(menu);
/** snippets */
final Menu snippetmenu = new Menu("Snippets");
loadSnippets().stream().filter( C -> C.isBioalcidaeScope()).forEach( C -> {
final MenuItem item = new MenuItem(C.label + (C.function ? "[Function]" : ""));
item.setOnAction(C.handler(AbstractAwkLike.this.scriptArea));
snippetmenu.getItems().add(item);
});
final MenuBar menuBar = new MenuBar(fileMenu, snippetmenu);
contentPane.getChildren().add(menuBar);
final FlowPane top = new FlowPane(5, 5);
Button button = new Button("Save Script as...");
button.setOnAction( AE -> {
actionSaveScript(dialog, this.scriptArea);
});
top.getChildren().add(button);
button = new Button("Open Script as ...");
button.setOnAction( AE -> {
actionLoadScript(dialog, this.scriptArea);
});
top.getChildren().add(button);
button = new Button("Validate");
button.setTooltip(new Tooltip("Validate javascript syntax"));
button.setOnAction( AE -> {
actionValidateScript(dialog, this.scriptArea);
});
top.getChildren().add(button);
contentPane.getChildren().add(top);
contentPane.getChildren().add(new Separator(Orientation.HORIZONTAL));
final BorderPane scriptPane = new BorderPane(this.scriptArea);
scriptPane.setPadding(new Insets(5));
scriptPane.setMaxHeight(Double.MAX_VALUE);
scriptPane.setMaxWidth(Double.MAX_VALUE);
contentPane.getChildren().add(scriptPane);
contentPane.getChildren().add(new Separator(Orientation.HORIZONTAL));
final FlowPane helpLabel = new FlowPane(getHelpString());
contentPane.getChildren().add(helpLabel);
final HBox buttonPane = new HBox(5);
buttonPane.setPadding(new Insets(5));
button = new Button("Run To File....");
button.setTooltip(new Tooltip("Run the process and save the result in a new file"));
button.setFont(Font.font(button.getFont().getFamily(), 24));
button.setTextFill(Color.GREEN);
button.setOnAction( AE -> {
execute(dialog, true);
});
buttonPane.getChildren().add(button);
button = new Button("Run To Dialog....");
button.setTextFill(Color.GREEN);
button.setTooltip(new Tooltip("Run the process and display the result in a new window"));
button.setFont(Font.font(button.getFont().getFamily(), 24));
button.setOnAction( AE -> {
execute(dialog, false);
});
buttonPane.getChildren().add(button);
button = new Button("Stop");
button.setTextFill(Color.RED);
button.setTooltip(new Tooltip("Stop current running process"));
button.setFont(Font.font(button.getFont().getFamily(), 24));
button.setOnAction( AE -> {
stopRunner();
});
buttonPane.getChildren().add(button);
contentPane.getChildren().add(buttonPane);
contentPane.getChildren().add(this.progessLabel);
dialog.setScene(new Scene(contentPane));
dialog.initOwner(NgsStage.this);
dialog.initModality(Modality.APPLICATION_MODAL);
dialog.showAndWait();
}
Example 15
Project: JXTN-master File: JFX.java View source code |
/** * 建立新的{@link javafx.scene.control.SeparatorMenuItem}建構器。 * * @return 新的{@link javafx.scene.control.SeparatorMenuItemMaker} */ @SuppressWarnings({ "rawtypes", "unchecked" }) public static javafx.scene.control.SeparatorMenuItemMaker<javafx.scene.control.SeparatorMenuItem, ?> separatorMenuItem() { return new javafx.scene.control.SeparatorMenuItemMaker(); }