Status
- NC and JNI drafted, 2022-06-28
This document is intended to collect questions around menu item design.
Parts of this might inform a NAP.
Example manifest
Definitions
- submenu id - the unique id for a plugin submenu.
- label - text displayed for a submenu
- command - a plugin command contribution. This is the functionality to invoke when a user clicks on a menu item.
Open questions
Probably have agreement here:
- Yes, items appended
- missing foreign references are ignored
2. Menu path collisions. How to handle when two submenu/menu trees from different plugins are the same.
e.g. Different id's, same label.
- Plugin A: "/napari/layer_context/Image/Shape"
- Plugin B: "/napari/layer_context/Image/Shape"
What to do about "Shape?"
Options:
- Put plugin name in parentheses to disambiguate.
- NO OTHER OPTIONS. DONE
Options:
- Robert-like
- Permissive top-level whitelist. Effectively allow plugins to add most anywhere, but there is a whitelist that might change over time.
- blacklist, but otherwise anything goes
- Allow menus to add anywhere
Relevant prs/links