constellation icon indicating copy to clipboard operation
constellation copied to clipboard

Required `PluginParameters` do not disable users from executing plugins.

Open capricornunicorn123 opened this issue 8 months ago • 0 comments

Prerequisites

  • [ ] Put an X between the brackets on this line if you have done all of the following:

    • Running the latest version of Constellation

    • Attached the Support Package via Help > Support Package

    • Checked the FAQs: https://github.com/constellation-app/constellation/wiki/FAQ

    • Checked that your issue isn’t already filed: https://github.com/constellation-app/constellation/issues

    • Checked that there is not already a module that provides the described functionality: https://github.com/constellation-app/constellation/wiki/Catalogue-of-Repositories

Description

When a plugin has a required field users are able run the plugin with missing information from the required field. This makes the required attribute of plugin parameters redundant. Instead, users should be prevented from executing plugins if required parameters are missing.

This issue is stemming from the use of an DefaultPluginInteraction prompt which generates a DialogDescriptor for uses to enter parameters and execute the plugin. This issue may be worth reviewing for PluginParameters in the DataAccessView as the component responsibilities for managing the executability of plugins based on the completeness of their parameters looks like it could use a facelift.

Steps to Reproduce

  1. Execute the ExportToSVGPlugin

  2. Remove information from a required field such as the file location or the graph title.

  3. Note that you can still execute the plugin and the responsibility for catching these missing parameters lies with tin the plugin itself. This means users have to run through the entire execution process again to correct their mistake.

Expected behaviour: Users should be prevented from executing plugins if required information is missing. This could be achieved by deactivating the execute button.

Actual behaviour: Execute buttons are always active and plugins can execute with empty required fields.

Reproduces how often: 100%

Additional Information

Any additional information, configuration or data that might be necessary to reproduce the issue.

capricornunicorn123 avatar Dec 05 '23 00:12 capricornunicorn123