private void initProfilerText(double x, double y) { profilerText.setFont(FXGL.getUIFactory().newFont(FontType.MONO, 20.0)); profilerText.setFill(Color.RED); profilerText.setTranslateX(x); profilerText.setTranslateY(y); uiRoot.getChildren().add(profilerText); }
/** * Creates a new button with given name that performs given action on click/press. * * @param name button name * @param action button action * @return new button */ protected final Button createActionButton(String name, Runnable action) { Button btn = FXGL.getUIFactory().newButton(name); btn.setOnAction(e -> action.run()); return btn; }
@Override protected Node createVersionView(String version) { Text view = FXGL.getUIFactory().newText(version); view.setTranslateY(app.getHeight() - 2); return view; }
/** * https://github.com/AlmasB/FXGL/issues/493 * * @return menu content with video settings */ protected final MenuContent createContentVideo() { log.debug("createContentVideo()"); ChoiceBox<Language> languageBox = getUIFactory().newChoiceBox(FXCollections.observableArrayList(Language.values())); languageBox.setValue(Language.ENGLISH); getSettings().getLanguage().bind(languageBox.valueProperty()); VBox vbox = new VBox(); if (getSettings().isManualResizeEnabled()) { Button btnFixRatio = getUIFactory().newButton(localizedStringProperty("menu.fixRatio")); btnFixRatio.setOnAction(e -> { listener.fixAspectRatio(); }); vbox.getChildren().add(btnFixRatio); } if (getSettings().isFullScreenAllowed()) { CheckBox cbFullScreen = getUIFactory().newCheckBox(); cbFullScreen.setSelected(false); cbFullScreen.selectedProperty().bindBidirectional(getSettings().getFullScreen()); vbox.getChildren().add(new HBox(25, getUIFactory().newText(getLocalizedString("menu.fullscreen")+": "), cbFullScreen)); } return new MenuContent( new HBox(25, getUIFactory().newText(localizedStringProperty("menu.language").concat(":")), languageBox), vbox ); }
log.debug("createContentLoad()"); ListView<SaveFile> list = getUIFactory().newListView(); Button btnLoad = getUIFactory().newButton(localizedStringProperty("menu.load")); btnLoad.disableProperty().bind(list.getSelectionModel().selectedItemProperty().isNull()); }); Button btnDelete = getUIFactory().newButton(localizedStringProperty("menu.delete")); btnDelete.disableProperty().bind(list.getSelectionModel().selectedItemProperty().isNull());
@Override protected Node createTitleView(String title) { Text titleView = FXGL.getUIFactory().newText(app.getSettings().getTitle(), 18); titleView.setTranslateY(30); return titleView; }
public FXGLSpinner(ObservableList<T> items) { super(items); getStyleClass().setAll("fxgl-spinner"); getEditor().setFont(FXGLUIConfig.getUIFactory().newFont(18)); } }
/** * Creates a new button with given name that performs given action on click/press. * * @param name button name * @param action button action * @return new button */ @Override protected final Button createActionButton(String name, Runnable action) { Button btn = FXGL.getUIFactory().newButton(name); btn.setOnAction(e -> action.run()); return btn; }
@Override protected Node createTitleView(String title) { Text titleView = FXGL.getUIFactory().newText(app.getSettings().getTitle(), 18); titleView.setTranslateY(30); return titleView; }
public FXGLSpinner(ObservableList<T> items) { super(items); getStyleClass().setAll("fxgl-spinner"); getEditor().setFont(FXGL.getUIFactory().newFont(18)); } }
/** * Creates a new button with given name that sets given content on click/press. * * @param name button name * @param contentSupplier content supplier * @return new button */ @SuppressWarnings("unchecked") protected final Button createContentButton(String name, Supplier<MenuContent> contentSupplier) { Button btn = FXGL.getUIFactory().newButton(name); btn.setUserData(contentSupplier); btn.setOnAction(e -> switchMenuContentTo(((Supplier<MenuContent>)btn.getUserData()).get())); return btn; } }
@Override protected Node createVersionView(String version) { Text view = FXGL.getUIFactory().newText(version, 16); view.setTranslateX(app.getWidth() - view.getLayoutBounds().getWidth()); view.setTranslateY(20); return view; }
public FXGLButton(String text) { super(text); getStyleClass().setAll("fxgl_button"); setFont(FXGLUIConfig.getUIFactory().newFont(22)); setAlignment(Pos.CENTER); setOnKeyPressed(e -> { if (e.getCode() == KeyCode.ENTER) { //FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuPress()); fire(); } }); // TODO: //setOnMouseEntered(e -> FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuSelect())); //setOnMouseClicked(e -> FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuPress())); }
/** * Creates a new button with given name that sets given content on click/press. * * @param name button name * @param contentSupplier content supplier * @return new button */ @SuppressWarnings("unchecked") @Override protected final Button createContentButton(String name, Supplier<MenuContent> contentSupplier) { Button btn = FXGL.getUIFactory().newButton(name); btn.setUserData(contentSupplier); btn.setOnAction(e -> switchMenuContentTo(((Supplier<MenuContent>)btn.getUserData()).get())); return btn; } }
@Override protected Node createVersionView(String version) { Text view = FXGL.getUIFactory().newText(version, 16); view.setTranslateX(app.getWidth() - view.getLayoutBounds().getWidth()); view.setTranslateY(20); return view; }
private HBox makeMenuBar() { ToggleButton tb1 = new ToggleButton("MAIN MENU"); ToggleButton tb2 = new ToggleButton("OPTIONS"); ToggleButton tb3 = new ToggleButton("EXTRA"); tb1.setFont(FXGL.getUIFactory().newFont(18)); tb2.setFont(FXGL.getUIFactory().newFont(18)); tb3.setFont(FXGL.getUIFactory().newFont(18)); ToggleGroup group = new ToggleGroup(); tb1.setToggleGroup(group); tb2.setToggleGroup(group); tb3.setToggleGroup(group); tb1.setUserData(menuBody); tb2.setUserData(makeOptionsMenu()); tb3.setUserData(makeExtraMenu()); group.selectedToggleProperty().addListener((obs, old, newToggle) -> { if (newToggle == null) { group.selectToggle(old); return; } switchMenuTo((Node)newToggle.getUserData()); }); group.selectToggle(tb1); HBox hbox = new HBox(10, tb1, tb2, tb3); hbox.setAlignment(Pos.TOP_CENTER); return hbox; }
@Override protected Node createProfileView(String profileName) { Text view = FXGL.getUIFactory().newText(profileName, 24); view.setTranslateX(app.getWidth() - view.getLayoutBounds().getWidth()); view.setTranslateY(50); return view; }
public FXGLButton(String text) { super(text); getStyleClass().setAll("fxgl_button"); setFont(FXGL.getUIFactory().newFont(22)); setAlignment(Pos.CENTER); setOnKeyPressed(e -> { if (e.getCode() == KeyCode.ENTER) { FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuPress()); fire(); } }); setOnMouseEntered(e -> FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuSelect())); setOnMouseClicked(e -> FXGL.getAudioPlayer().playSound(FXGL.getSettings().getSoundMenuPress())); }
@Override protected Node createProfileView(String profileName) { Text view = FXGL.getUIFactory().newText(profileName, 24); view.setTranslateX(app.getWidth() - view.getLayoutBounds().getWidth()); view.setTranslateY(50); return view; }
@Override protected Node createProfileView(String profileName) { Text view = FXGL.getUIFactory().newText(profileName); view.setTranslateY(app.getHeight() - 2); view.setTranslateX(app.getWidth() - view.getLayoutBounds().getWidth()); return view; }