In the system I’m currently writing, there is a need for a large number of pop-up menus to save time and to ensure consistency of data entry. The user (who’s not computer savvy) then needs a user-friendly way to modify the contents of the menu. My solution to this has been to provide two data entry options as below:
If the desired value is in the menu, it can be selected (and it will appear in both boxes). If not, it can be manually entered in the adjacent box (and the pop-up will be empty). The user can then, if she wishes, click on the little plus sign icon to add that new value into the menu permanently. Similarly, she can select a value from the menu and click on the minus sign icon to permanently remove that value from the menu. The menu contents are stored in a separate database and are extracted at start-up - it’s actually this database that’s modified when the user changes the menu content.
I’d be interested to see any alternative approaches to this task.