Skip to content

#2183: dynamically generate form fields for selected commandlet - #2233

Open
Hiepiscus wants to merge 15 commits into
devonfw:mainfrom
Hiepiscus:2183-dynamically-generate-form-fields-for-selected-commandlet
Open

#2183: dynamically generate form fields for selected commandlet#2233
Hiepiscus wants to merge 15 commits into
devonfw:mainfrom
Hiepiscus:2183-dynamically-generate-form-fields-for-selected-commandlet

Conversation

@Hiepiscus

@Hiepiscus Hiepiscus commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This PR fixes #2183

Introduces dynamic form generation for commandlets. Instead of using a static input field, the UI now creates appropriate form fields based on the properties of the selected commandlet for a more flexible configuration experience.
Show more lines

Implemented changes:

  • Dynamically generate form fields based on the selected commandlet properties
  • PropertyFormFieldFactory (new): create appropriate UI based on commandlet:
    • TextField for positional parameters and named options
    • CheckBox for boolean flags
  • Replaced static TextField with a ScrollPane + VBox in the FXML layout
  • Added onCommandletSelected() listener to regenerate the form on selection change
  • Adapted runCommandlet() to read property values from generated form fields

Testing instructions

Please add conscise, understandable instructions on how a reviewer can test/verify the functionality of your contribution here:

  1. Run AppLauncher
  2. Set a project and workspace
  3. Click Commandlets
  4. Select a commandlet from the combobox
  5. Verify that the displayed form fields change depending on the selected commandlet
  6. Enter parameters in the generated fields
  7. Click Run
  8. Verify that the commandlet executes successfully

Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat). If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labeled
    with internal
  • You have formulated clear instructions on how to test your contribution under "Testing instructions"

@github-project-automation github-project-automation Bot moved this to 🆕 New in IDEasy board Jul 29, 2026
@Hiepiscus Hiepiscus self-assigned this Jul 29, 2026
@Hiepiscus Hiepiscus added GUI Graphical User Interface of IDEasy (aka dashboard) build with JavaFx commandlet ide sub-command labels Jul 29, 2026
@Hiepiscus Hiepiscus moved this from 🆕 New to Team Review in IDEasy board Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

commandlet ide sub-command GUI Graphical User Interface of IDEasy (aka dashboard) build with JavaFx

Projects

Status: Team Review

Development

Successfully merging this pull request may close these issues.

Dynamically generate form fields for selected commandlet

1 participant