912
edits
Changes
→Sidebar API
== Sidebar API==
The Sidebar provides a mechanism for creating and switching between workspaces containing views. It arranges available views into categories so that they are easy for the user to find.
A sidebar must do the following:
* Action on the sidebar that should change to the workspace shown should call one of viewmanager.next_workspace/previous_workspace/goto_workspace and then wait for view-changed to update itself.
* Allow the user to create a workspace containing any view.
* Connect to view-changed from displaystate, and set it's content to match that.
* Sidebar might have different representations for how above methods can be called.
* Otherwise, the sidebar is independent of the rest of Gramps.
* Possibly, allow the user to add a secondary view to a workspace.
=== Methods ===
handlers_block and handlers_unblock are used in the category sidebar to block the button handlers. This may be useful to prevent recursive calls or to prevent spurious effects.
==DisplayState==