-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implemented StatusController
and StatusWriter
for setting/updating the status of modules
#416
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added some minor suggestions, and some thoughts on an alternative approach to the division of responsibilities between ModuleInstanceStatusController
and ModuleInstanceStatusControllerPrivate
Let's have a discussion before proceeding on this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested and I really like the features! With respect to code, Sigurd have written a good feedback there.
Looks good to me, only one question (not needed to be changed)
Question regarding the render of settings error/warnings: These are placed in the header of the module view, is it wanted to have one single place to show these, or could settingsStatusWriter render in the settings header? (I know the settings status will disappear when other module settings or config is rendered in the drawer)
Here is a screenshot of testing "invalid" selected vector in settings.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go 👍
Description
With this PR, modules can report both their loading status as well as per-render errors/warnings which are displayed in the module's respective header. In addition, custom debug messages can be set which are displayed in the
DebugProfiler
at the bottom of the module's view or settings component, respectively. Moreover, when using this new feature, the module's direct render count (neglecting its sub-components, contrary to the tree render count as viewed by theDebugProfiler
itself) is reported to theDebugProfiler
and also displayed there.Finally, added two new components that ought be used when a module's view or settings component runs into an error or does not have anything to show (
ContentError
orContentInfo
, respectively).How to use the new feature
In the view component
In the settings component
NOTE: The loading state can currently only be set with the
ViewStatusWriter
.Closes #375.