Refactor/generate cli
Description
Refactored and improved the auto-generation of CLI classes.
Related Issues
closes #169 (closed) #170 (closed)
Type of Change
- Added auto-discovery of widgets.
- Added cli entry point
bw-generate-cli.
- Added
Widgets
enum containing all top-level widgets that inherit fromBECConnector
andQWidget | QGraphicsWidget
. - CLI widget classes are now sorted alphabetically.
- Added isort flag to always consider
bec_widgets
as first party. - Added
bec_ipython_client
as dependency as it is used by the jupyter widget. - Removed duplicated
plot
fromWaveform
's user access methods. - Made field validator in
ConnectorConfig
a class method. - Minor change to make
pylint-check
job work. - Removed
BECConnector
from client interface.
Potential side effects
Hopefully none...
Additional comments
-
BECConnector
is part of the client interface. Is this needed or was it added by mistake?- I was under the assumption that all client-facing "high-level" classes inherit from QWidget
, however, BECImageShow
inherits from QGraphcisWidget
which itself is not derived from QWidget
. Are there any other classes that must be respected?
Definition of Done
- [ ] Documentation is up-to-date. Let's do this once we add plugin support
Edited by wakonig_k