forked from aiidalab/aiidalab-qe
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement MVC design and lazy loading (aiidalab#802)
This is a large-scale redesign that focuses on the separation of data/business logic from the UI. Data is contained in `Model` classes as `traitlets` traits, which are observed in the `Controller`/`View` widgets and handled by `Controller` event handlers. `Controller`s also observe changes in their respective `View`s to handle user events. The design relies predominantly on the Observer pattern, with a few exceptions handled as a Mediator pattern. Lazy loading is implemented via `render` methods triggered when the user visits the relevant component. However, the `Model` network is decoupled from the UI and remains in sync as a source of truth. `View`s sync up with the `Model` network on render. Some changes in the UI were included here to better fit with the MVC design and the principles of lazy loading. Clear documentation will be provided in a follow-up PR.
- Loading branch information
1 parent
150b22e
commit 3d02dd5
Showing
119 changed files
with
9,911 additions
and
7,422 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.