The Toolbar used is FS/2 is based on the User Customizable Menu (UCMenu) PM control. The source code was provided as sample code to be used in applications such as FS/2. The following information is quoted directly from the documentation provided with this control.
Acknowledgments
This control was originally conceived at the IBM Yorktown Research laboratory by Gennaro Cuomo and Juerg VonKaenel for use in EPM (the OS/2 enhanced system editor) with subsequent development contributions from Guillaume Le Stum, John Ponzo, Alan Warren and Alex Bertrand. Mark McMillan of IBM Research Triangle Park developed the sample code, frame control utility functions, and initiated improvements in the architecture.
Description
The User Customizable Menu is a very powerful user interface component, designed to overcome the problems with current menu and toolbar designs. It allows the user to define the ordering of menu items and visual representation (artwork and text) of menu items. New items, like "macro assignments" can be added dynamically. A user customizable menu can be saved in its present state for later use. The UCMenu changes itself into a "scrolling" mode when the number of selectable items exceeds the allotted window size.
Aside from the good graphical presentation, the most significant features of this control are the easy user customization methods it provides (thus its name, UCMenus). Customizing a UCMenu is made easy for the user by extensive use of direct manipulation techniques. For example, to delete an item from the toolbar the user can drag the item to the system shredder. Reordering the items is as easy as dragging the item to a new position and dropping it. Many direct manipulation functions are provided by the control.
There are two basic customization methods for which UCMenus provides direct support:
1. Free Form Customization: Using this method, the user can alter any aspect of any menu item, including the bitmap (graphical presentation), the application function associated with the item, etc. An OS/2 notebook control provides easy customization of all aspects of the menu items. This is the default method if not overridden by the application.
2. Buffet Style Customization: Using this method, the application provides a fixed set ("buffet") of supported menu items. The user can only select from the buffet and cannot modify the application functions associated with the menu items. They cannot specify alternate or custom bitmaps for the graphical presentation. This is the easiest form of customization method for novice users or for applications with a fixed set of toolbar items.
All customization is encapsulated in the UCMenu control itself. The control and the application cooperate via messages to provide application specific information during customization. Using the built-in customization methods the user can: