Search in sources :

Example 1 with SELECT

use of com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.SELECT in project tcMenu by davetcc.

the class GenerateCodeDialog method selectPlugin.

private void selectPlugin(List<CodePluginItem> pluginItems, String changeWhat, BiConsumer<UICodePluginItem, CodePluginItem> eventHandler) {
    Popup popup = new Popup();
    List<UICodePluginItem> listOfComponents = pluginItems.stream().map(display -> new UICodePluginItem(manager, display, SELECT, (ui, item) -> {
        popup.hide();
        eventHandler.accept(ui, item);
    }, 0, "pluginSel_" + display.getId())).toList();
    VBox vbox = new VBox(5);
    addTitleLabel(vbox, "Select the " + changeWhat + " to use:");
    vbox.getChildren().addAll(listOfComponents);
    BorderPane pane = new BorderPane();
    pane.setCenter(vbox);
    vbox.getStyleClass().add("popupWindow");
    var scroll = new ScrollPane(pane);
    scroll.setFitToWidth(true);
    scroll.setHbarPolicy(ScrollPane.ScrollBarPolicy.NEVER);
    scroll.setVbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
    scroll.setPrefSize(700, 600);
    popup.getContent().add(scroll);
    popup.setAutoHide(true);
    popup.setOnAutoHide(event -> popup.hide());
    popup.setHideOnEscape(true);
    var stage = (Stage) (currentInput.getScene().getWindow());
    popup.show(stage);
}
Also used : EmbeddedPlatforms(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatforms) HPos(javafx.geometry.HPos) javafx.scene.layout(javafx.scene.layout) javafx.scene.control(javafx.scene.control) BaseDialogSupport(com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport) CreatorProperty(com.thecoderscorner.menu.editorui.generator.core.CreatorProperty) CHANGE(com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.CHANGE) IoExpanderPropertyValidationRules(com.thecoderscorner.menu.editorui.generator.validation.IoExpanderPropertyValidationRules) FXCollections.observableArrayList(javafx.collections.FXCollections.observableArrayList) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) Insets(javafx.geometry.Insets) SelectAuthenticatorTypeDialog(com.thecoderscorner.menu.editorui.dialog.SelectAuthenticatorTypeDialog) BiConsumer(java.util.function.BiConsumer) SELECT(com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.SELECT) CustomDeviceExpander(com.thecoderscorner.menu.editorui.generator.parameters.expander.CustomDeviceExpander) IoExpanderDefinitionCollection(com.thecoderscorner.menu.editorui.generator.parameters.IoExpanderDefinitionCollection) StringHelper(com.thecoderscorner.menu.editorui.util.StringHelper) CodeGeneratorOptionsBuilder(com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptionsBuilder) SelectEepromTypeDialog(com.thecoderscorner.menu.editorui.dialog.SelectEepromTypeDialog) InternalDeviceExpander(com.thecoderscorner.menu.editorui.generator.parameters.expander.InternalDeviceExpander) CurrentProjectEditorUI(com.thecoderscorner.menu.editorui.uimodel.CurrentProjectEditorUI) SubSystem(com.thecoderscorner.menu.editorui.generator.core.SubSystem) INFO(java.lang.System.Logger.Level.INFO) CoreCodeGenerator(com.thecoderscorner.menu.editorui.generator.core.CoreCodeGenerator) EmbeddedPlatform(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatform) CurrentEditorProject(com.thecoderscorner.menu.editorui.project.CurrentEditorProject) Collectors(java.util.stream.Collectors) BaseDialogSupport.createDialogStateAndShow(com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport.createDialogStateAndShow) Popup(javafx.stage.Popup) ERROR(java.lang.System.Logger.Level.ERROR) ActionEvent(javafx.event.ActionEvent) List(java.util.List) CodePluginItem(com.thecoderscorner.menu.editorui.generator.plugin.CodePluginItem) Stage(javafx.stage.Stage) Paths(java.nio.file.Paths) CodeGeneratorOptions(com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptions) Optional(java.util.Optional) CodePluginManager(com.thecoderscorner.menu.editorui.generator.plugin.CodePluginManager) Popup(javafx.stage.Popup) Stage(javafx.stage.Stage)

Aggregations

BaseDialogSupport (com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport)1 BaseDialogSupport.createDialogStateAndShow (com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport.createDialogStateAndShow)1 SelectAuthenticatorTypeDialog (com.thecoderscorner.menu.editorui.dialog.SelectAuthenticatorTypeDialog)1 SelectEepromTypeDialog (com.thecoderscorner.menu.editorui.dialog.SelectEepromTypeDialog)1 CodeGeneratorOptions (com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptions)1 CodeGeneratorOptionsBuilder (com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptionsBuilder)1 CoreCodeGenerator (com.thecoderscorner.menu.editorui.generator.core.CoreCodeGenerator)1 CreatorProperty (com.thecoderscorner.menu.editorui.generator.core.CreatorProperty)1 SubSystem (com.thecoderscorner.menu.editorui.generator.core.SubSystem)1 IoExpanderDefinitionCollection (com.thecoderscorner.menu.editorui.generator.parameters.IoExpanderDefinitionCollection)1 CustomDeviceExpander (com.thecoderscorner.menu.editorui.generator.parameters.expander.CustomDeviceExpander)1 InternalDeviceExpander (com.thecoderscorner.menu.editorui.generator.parameters.expander.InternalDeviceExpander)1 CodePluginItem (com.thecoderscorner.menu.editorui.generator.plugin.CodePluginItem)1 CodePluginManager (com.thecoderscorner.menu.editorui.generator.plugin.CodePluginManager)1 EmbeddedPlatform (com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatform)1 EmbeddedPlatforms (com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatforms)1 CHANGE (com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.CHANGE)1 SELECT (com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.SELECT)1 IoExpanderPropertyValidationRules (com.thecoderscorner.menu.editorui.generator.validation.IoExpanderPropertyValidationRules)1 CurrentEditorProject (com.thecoderscorner.menu.editorui.project.CurrentEditorProject)1