1,583
edits
Changes
→Discussion
# Rethink each plugin type (report, graph, tool, etc) to be a well-defined API
# Move each plugin registration and handler from its current specific register_TYPE() to generic register(type=TYPE)
== Notes ==
This section notes some of the details of how the current system works.
# Each plugin calls a register_TYPE() function.
# src/PluginUtils/_PluginMgr.py defines those functions
# src/ViewManager.py defines the callback for the menu, which calls:
## ReportBase.report(dbstate, uistate, dbstate.get_active_person(),lst[0], lst[1], lst[2], lst[3], lst[4], lst[5])
## Tool.gui_tool(dbstate, uistate, lst[0], lst[1], lst[2], lst[3], lst[4], dbstate.db.request_rebuild)
== Discussion ==