Java Code Examples for javafx.scene.control.TextField#setTooltip()
The following examples show how to use
javafx.scene.control.TextField#setTooltip() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ChannelInformation.java From paintera with GNU General Public License v2.0 | 6 votes |
public Node getNode() { final TextField channels = new TextField(); channels.setEditable(false); channels.setTooltip(new Tooltip("Channel selection")); channelSelection.addListener((obs, oldv, newv) -> channels.setText(String.join(", ", IntStream.of(newv).boxed().map(Object::toString).toArray(String[]::new)))); MenuItem all = new MenuItem("_All"); all.setOnAction(e -> channelSelection.set(range())); MenuItem revert = new MenuItem("_Revert"); revert.setOnAction(e -> channelSelection.set(reverted(channelSelection.get()))); MenuItem everyNth = new MenuItem("Every _Nth"); everyNth.setOnAction(e -> everyNth(numChannels.get()).ifPresent(channelSelection::set)); final MenuButton selectionButton = new MenuButton("_Select", null, all, revert, everyNth); HBox.setHgrow(channels, Priority.ALWAYS); return new VBox( new Label("Channel Settings"), new HBox(channels, selectionButton)); }
Example 2
Source File: ColorChooser.java From LogFX with GNU General Public License v3.0 | 6 votes |
private static TextField fieldFor( Rectangle colorRectangle, String toolTipText, Consumer<? super Color> onUpdate ) { TextField field = new TextField( colorRectangle.getFill().toString() ); field.setTooltip( new Tooltip( toolTipText ) ); field.setMinWidth( 30 ); field.setMaxWidth( 114 ); field.textProperty().addListener( ( ignore, oldValue, newValue ) -> { try { Color colorValue = Color.valueOf( newValue ); colorRectangle.setFill( colorValue ); field.getStyleClass().remove( "error" ); onUpdate.accept( colorValue ); } catch ( IllegalArgumentException e ) { if ( !field.getStyleClass().contains( "error" ) ) { field.getStyleClass().add( "error" ); } log.debug( "Invalid color entered" ); } } ); return field; }
Example 3
Source File: HighlightOptions.java From LogFX with GNU General Public License v3.0 | 6 votes |
Row( String pattern, Paint backgroundColor, Paint fillColor, boolean isFiltered ) { setSpacing( 5 ); expressionField = new TextField( pattern ); expressionField.setMinWidth( 300 ); expressionField.setTooltip( new Tooltip( "Enter a regular expression." ) ); bkgColorPicker = new ColorChooser( backgroundColor.toString(), "Enter the background color." ); fillColorPicker = new ColorChooser( fillColor.toString(), "Enter the text color." ); isFilteredBox = new CheckBox(); isFilteredBox.setSelected( isFiltered ); isFilteredBox.setTooltip( new Tooltip( "Include in filter" ) ); InvalidationListener updater = ( ignore ) -> update( bkgColorPicker.getColor(), fillColorPicker.getColor(), isFilteredBox.selectedProperty().get() ); bkgColorPicker.addListener( updater ); fillColorPicker.addListener( updater ); isFilteredBox.selectedProperty().addListener( updater ); expressionField.textProperty().addListener( updater ); setMinWidth( 500 ); }
Example 4
Source File: TooltipFrame.java From oim-fx with MIT License | 5 votes |
private void init() { this.setCenter(rootVBox); this.setTitle("登录"); this.setWidth(380); this.setHeight(600); this.setRadius(10); rootVBox.getChildren().add(hBox1); rootVBox.getChildren().add(hBox2); rootVBox.getChildren().add(hBox3); rootVBox.getChildren().add(hBox4); Tooltip tooltip1 = new Tooltip(); tooltip1.setText("账号"); tooltip1.setHideOnEscape(true); TextField textField1 = new TextField(); textField1.setTooltip(tooltip1); Button button1 = new Button(); button1.setText("点击"); button1.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { tooltip1.show(TooltipFrame.this); } }); hBox1.getChildren().add(textField1); hBox1.getChildren().add(button1); }
Example 5
Source File: PainteraAlerts.java From paintera with GNU General Public License v2.0 | 5 votes |
public static Alert versionDialog() { final TextField versionField = new TextField(Version.VERSION_STRING); versionField.setEditable(false); versionField.setTooltip(new Tooltip(versionField.getText())); final HBox versionBox = new HBox(new Label("Paintera Version"), versionField); HBox.setHgrow(versionField, Priority.ALWAYS); versionBox.setAlignment(Pos.CENTER); final Alert alert = PainteraAlerts.alert(Alert.AlertType.INFORMATION, true); alert.getDialogPane().setContent(versionBox); alert.setHeaderText("Paintera Version"); alert.initModality(Modality.NONE); return alert; }
Example 6
Source File: ChatBoxTimed.java From mars-sim with GNU General Public License v3.0 | 5 votes |
@Override public void start(Stage primaryStage) { final Clock clock = new Clock(Duration.seconds(1), true); final BorderPane root = new BorderPane(); final HBox controls = new HBox(5); controls.setAlignment(Pos.CENTER); controls.setPadding(new Insets(10)); final TextField itemField = new TextField(); itemField.setTooltip(new Tooltip("Type an item and press Enter")); controls.getChildren().add(itemField); final VBox items = new VBox(5); itemField.setOnAction(event -> { String text = itemField.getText(); Label label = new Label(); label.textProperty().bind(Bindings.format("%s (%s)", text, clock.getElapsedStringBinding())); items.getChildren().add(label); itemField.setText(""); }); final ScrollPane scroller = new ScrollPane(); scroller.setContent(items); final Label currentTimeLabel = new Label(); currentTimeLabel.textProperty().bind(Bindings.format("Current time: %s", clock.getTimeStringBinding())); root.setTop(controls); root.setCenter(scroller); root.setBottom(currentTimeLabel); Scene scene = new Scene(root, 600, 400); primaryStage.setTitle("Timed item display"); primaryStage.setScene(scene); primaryStage.show(); }
Example 7
Source File: WebPanel.java From Quelea with GNU General Public License v3.0 | 4 votes |
private void setupNavigationBarContent() { back = new Button("", getButtonImageView("file:icons/arrow-back.png")); back.setOnMouseClicked(e -> { if (wd != null) { wd.back(); } }); forward = new Button("", getButtonImageView("file:icons/arrow-forward.png")); forward.setOnMouseClicked(e -> { if (wd != null) { wd.forward(); } }); reload = new Button("", getButtonImageView("file:icons/reload.png")); reload.setOnMouseClicked(e -> { if (wd != null) { wd.reload(); } }); url = new TextField(); url.setPrefHeight(32); url.setMaxHeight(32); url.setStyle("" + "-fx-font-size: 14px;" + "-fx-font-weight: bold;" + "-fx-font-family: fantasy;"); url.setTooltip(new Tooltip("Change URL")); url.setOnKeyReleased(e -> { if (e.getCode().equals(KeyCode.ENTER)) { if (wd != null) { wd.setUrl(url.getText()); } } }); go = new Button("", getButtonImageView("file:icons/send.png")); go.setOnMouseClicked(e -> { if (wd != null) { wd.setUrl(url.getText()); } }); plus = new Button("", getButtonImageView("file:icons/zoom-in.png")); plus.setOnMouseClicked(e -> { if (wd != null) { wd.zoom(true); } }); minus = new Button("", getButtonImageView("file:icons/zoom-out.png")); minus.setOnMouseClicked(e -> { if (wd != null) { wd.zoom(false); } }); }
Example 8
Source File: LockFileAlreadyExistsDialog.java From paintera with GNU General Public License v2.0 | 4 votes |
public static void showDialog(final LockFile.UnableToCreateLock exception) { final Alert alert = new Alert(AlertType.ERROR); alert.setTitle("Paintera"); alert.setHeaderText("Unable to create lock file."); final Label instructions = new Label( "If no other Paintera instance is accessing the same project please delete lock file and try to " + "restart Paintera."); instructions.setWrapText(true); final GridPane content = new GridPane(); final Label fileLabel = new Label("Lock File"); final Label messageLabel = new Label("Message"); final TextField fileField = new TextField(exception.getLockFile().getAbsolutePath()); final TextField messageField = new TextField(exception.getMessage()); fileField.setTooltip(new Tooltip(fileField.getText())); messageField.setTooltip(new Tooltip(messageField.getText())); fileField.setEditable(false); messageField.setEditable(false); GridPane.setHgrow(fileField, Priority.ALWAYS); GridPane.setHgrow(messageField, Priority.ALWAYS); content.add(fileLabel, 0, 0); content.add(messageLabel, 0, 1); content.add(fileField, 1, 0); content.add(messageField, 1, 1); final VBox contentBox = new VBox(instructions, content); alert.getDialogPane().setContent(contentBox); final StringWriter stringWriter = new StringWriter(); exception.printStackTrace(new PrintWriter(stringWriter)); final String exceptionText = stringWriter.toString(); final TextArea textArea = new TextArea(exceptionText); textArea.setEditable(false); textArea.setWrapText(true); LOG.trace("Exception text (length={}): {}", exceptionText.length(), exceptionText); textArea.setMaxWidth(Double.MAX_VALUE); textArea.setMaxHeight(Double.MAX_VALUE); GridPane.setVgrow(textArea, Priority.ALWAYS); GridPane.setHgrow(textArea, Priority.ALWAYS); // final GridPane expandableContent = new GridPane(); // expandableContent.setMaxWidth( Double.MAX_VALUE ); // // expandableContent.add( child, columnIndex, rowIndex ); alert.getDialogPane().setExpandableContent(textArea); // alert.setResizable( true ); alert.showAndWait(); }
Example 9
Source File: Palette.java From phoebus with Eclipse Public License 1.0 | 4 votes |
/** Create UI elements * @return Top-level Node of the UI */ @SuppressWarnings("unchecked") public Node create() { final VBox palette = new VBox(); final Map<WidgetCategory, Pane> palette_groups = createWidgetCategoryPanes(palette); groups = palette_groups.values(); createWidgetEntries(palette_groups); final ScrollPane palette_scroll = new ScrollPane(palette); palette_scroll.setHbarPolicy(ScrollBarPolicy.NEVER); palette_scroll.setFitToWidth(true); // TODO Determine the correct size for the main node // Using 2*PREFERRED_WIDTH was determined by trial and error palette_scroll.setMinWidth(PREFERRED_WIDTH + 12); palette_scroll.setPrefWidth(PREFERRED_WIDTH); // Copy the widgets, i.e. the children of each palette_group, // to the userData. // Actual children are now updated based on search by widget name palette_groups.values().forEach(group -> group.setUserData(new ArrayList<Node>(group.getChildren()))); final TextField searchField = new ClearingTextField(); searchField.setPromptText(Messages.SearchTextField); searchField.setTooltip(new Tooltip(Messages.WidgetFilterTT)); searchField.setPrefColumnCount(9); searchField.textProperty().addListener( ( observable, oldValue, search_text ) -> { final String search = search_text.toLowerCase().trim(); palette_groups.values().stream().forEach(group -> { group.getChildren().clear(); final List<Node> all_widgets = (List<Node>)group.getUserData(); if (search.isEmpty()) group.getChildren().setAll(all_widgets); else group.getChildren().setAll(all_widgets.stream() .filter(node -> { final String text = ((ToggleButton) node).getText().toLowerCase(); return text.contains(search); }) .collect(Collectors.toList())); }); }); HBox.setHgrow(searchField, Priority.NEVER); final HBox toolsPane = new HBox(6); toolsPane.setAlignment(Pos.CENTER_RIGHT); toolsPane.setPadding(new Insets(6)); toolsPane.getChildren().add(searchField); BorderPane paletteContainer = new BorderPane(); paletteContainer.setTop(toolsPane); paletteContainer.setCenter(palette_scroll); return paletteContainer; }
Example 10
Source File: SelectedWidgetUITracker.java From phoebus with Eclipse Public License 1.0 | 4 votes |
/** Create an inline editor * * <p>Depending on the widget's properties, it will edit * the PV name or the text. * * @param widget Widget on which to create an inline editor */ private void createInlineEditor(final Widget widget) { // Check for an inline-editable property Optional<WidgetProperty<String>> check; // Defaulting to PV name or text property with some hard-coded exceptions. // Alternative if the list of hard-coded widgets grows: // Add Widget#getInlineEditableProperty() if (widget instanceof ActionButtonWidget) check = Optional.of(((ActionButtonWidget) widget).propText()); else if (widget instanceof GroupWidget) check = Optional.of(((GroupWidget) widget).propName()); else check = widget.checkProperty(CommonWidgetProperties.propPVName); if (! check.isPresent()) check = widget.checkProperty(CommonWidgetProperties.propText); if (! check.isPresent()) return; // Create text field, aligned with widget, but assert minimum size final MacroizedWidgetProperty<String> property = (MacroizedWidgetProperty<String>)check.get(); inline_editor = new TextField(property.getSpecification()); // 'Managed' text field would assume some default size, // but we set the exact size in here inline_editor.setManaged(false); inline_editor.setPromptText(property.getDescription()); // Not really shown since TextField will have focus inline_editor.setTooltip(new Tooltip(property.getDescription())); inline_editor.relocate(tracker.getX(), tracker.getY()); inline_editor.resize(Math.max(100, tracker.getWidth()), Math.max(20, tracker.getHeight())); getChildren().add(inline_editor); // Add autocomplete menu if editing property PVName if (property.getName().equals(CommonWidgetProperties.propPVName.getName())) PVAutocompleteMenu.INSTANCE.attachField(inline_editor); // On enter or lost focus, update the property. On Escape, just close. final ChangeListener<? super Boolean> focused_listener = (prop, old, focused) -> { if (! focused) { if (!property.getSpecification().equals(inline_editor.getText())) undo.execute(new SetMacroizedWidgetPropertyAction(property, inline_editor.getText())); // Close when focus lost closeInlineEditor(); } }; inline_editor.setOnAction(event -> { undo.execute(new SetMacroizedWidgetPropertyAction(property, inline_editor.getText())); inline_editor.focusedProperty().removeListener(focused_listener); closeInlineEditor(); }); inline_editor.setOnKeyPressed(event -> { switch (event.getCode()) { case ESCAPE: event.consume(); inline_editor.focusedProperty().removeListener(focused_listener); closeInlineEditor(); default: } }); inline_editor.focusedProperty().addListener(focused_listener); inline_editor.selectAll(); inline_editor.requestFocus(); }
Example 11
Source File: AddPVDialog.java From phoebus with Eclipse Public License 1.0 | 4 votes |
private Node createContent(final Model model, final int count) { final GridPane layout = new GridPane(); // layout.setGridLinesVisible(true); layout.setHgap(5); layout.setVgap(5); final ColumnConstraints stay = new ColumnConstraints(); final ColumnConstraints fill = new ColumnConstraints(); fill.setHgrow(Priority.ALWAYS); layout.getColumnConstraints().addAll(stay, stay, fill); axis_options = FXCollections.observableArrayList(model.getAxes().stream().map(AxisConfig::getName).collect(Collectors.toList())); axis_options.add(0, Messages.AddPV_NewOrEmptyAxis); int row = -1; for (int i=0; i<count; ++i) { final String nm = count == 1 ? Messages.Name : Messages.Name + " " + (i+1); layout.add(new Label(nm), 0, ++row); final TextField name = new TextField(); name.textProperty().addListener(event -> checkDuplicateName(name)); name.setTooltip(new Tooltip(formula ? Messages.AddFormula_NameTT : Messages.AddPV_NameTT)); if (! formula) PVAutocompleteMenu.INSTANCE.attachField(name); names.add(name); layout.add(name, 1, row, 2, 1); if (! formula) { layout.add(new Label(Messages.AddPV_Period), 0, ++row); final TextField period = new TextField(Double.toString(Preferences.scan_period)); period.setTooltip(new Tooltip(Messages.AddPV_PeriodTT)); periods.add(period); period.setDisable(true); layout.add(period, 1, row); final CheckBox monitor = new CheckBox(Messages.AddPV_OnChange); monitor.setTooltip(new Tooltip(Messages.AddPV_OnChangeTT)); monitor.setSelected(true); monitors.add(monitor); monitor.setOnAction(event -> period.setDisable(monitor.isSelected())); layout.add(monitors.get(i), 2, row); } layout.add(new Label(Messages.AddPV_Axis), 0, ++row); final ChoiceBox<String> axis = new ChoiceBox<>(axis_options); axis.setTooltip(new Tooltip(Messages.AddPV_AxisTT)); axis.getSelectionModel().select(0); axes.add(axis); layout.add(axes.get(i), 1, row); layout.add(new Separator(), 0, ++row, 3, 1); } return layout; }
Example 12
Source File: BsqAddressTextField.java From bisq with GNU Affero General Public License v3.0 | 4 votes |
public BsqAddressTextField() { TextField textField = new BisqTextField(); textField.setId("address-text-field"); textField.setEditable(false); textField.textProperty().bind(address); String tooltipText = Res.get("addressTextField.copyToClipboard"); textField.setTooltip(new Tooltip(tooltipText)); textField.setOnMousePressed(event -> wasPrimaryButtonDown = event.isPrimaryButtonDown()); textField.setOnMouseReleased(event -> { if (wasPrimaryButtonDown && address.get() != null && address.get().length() > 0) { Utilities.copyToClipboard(address.get()); Notification walletFundedNotification = new Notification() .notification(Res.get("addressTextField.addressCopiedToClipboard")) .hideCloseButton() .autoClose(); walletFundedNotification.show(); } wasPrimaryButtonDown = false; }); textField.focusTraversableProperty().set(focusTraversableProperty().get()); //TODO app wide focus //focusedProperty().addListener((ov, oldValue, newValue) -> textField.requestFocus()); Label copyIcon = new Label(); copyIcon.setLayoutY(3); copyIcon.getStyleClass().addAll("icon", "highlight"); copyIcon.setTooltip(new Tooltip(Res.get("addressTextField.copyToClipboard"))); AwesomeDude.setIcon(copyIcon, AwesomeIcon.COPY); copyIcon.setOnMouseClicked(e -> GUIUtil.showFeeInfoBeforeExecute(() -> { if (address.get() != null && address.get().length() > 0) Utilities.copyToClipboard(address.get()); })); AnchorPane.setRightAnchor(copyIcon, 5.0); AnchorPane.setRightAnchor(textField, 30.0); AnchorPane.setLeftAnchor(textField, 0.0); getChildren().addAll(textField, copyIcon); }