Adding SideBar widget
Problem to solve
NA.
Proposal
Explanation
Create a SideBar widget with the following properties:
- Developer has the ability to choose how many menus to put inside the SideBar.
- Each menu in the SideBar is mapped to a single window.
- The SideBar is navigable using (h/j/k/l) keys.
Technical details
The SideBar should either be separate from the window where each menu is displayed, or the main window should be part of it. Let's explore both options:
- If the SideBar is separated from the main window, then the SideBar must be linked to this main window at the composition root. Some form of listener pattern must be implemented in order for the main window to change whenever the user changes menus. With this scenario, the SideBar widget should inherit from Window class instead of WindowComposite.
- If the main window is part of the entire SideBar widget, then the SideBar widget should inherit from WindowComposite class as it contains multiple windows. Upon construction, the developer must specify a percentage of the total size to be dedicated for the SideBar menu list part.
Extensions
Unknown.
Intended users
Developer of an application depending on NcursesPlus.
Edited by Marc Bechara