Tools are integrated with the SDM via a file named "toolList.text". This file contains one line of information for each tool to be integrated. A maximum of 20 lines (tools) is allowed. Each line consists of two fields separated by a comma. The first field is the tool's registered name. The second field is the name by which the developer wishes the end-user to recognize the tool. The latter appears as a menu item under a new "Tools" menu that is added to the SDM's menu bar.
If a "Tools" menu item is clicked while the corresponding tool is not executing, the SDM invokes the tool, using the given registered name. If the menu item is clicked while the tool is executing, the SDM calls the tool's restoreWnd method. If the user terminates a tool via its GUI or the tool terminates itself (and the tool has properly notified the SDM via ProgramAPI.notifyShutdown), it will be invoked again when the menu item is clicked. If the user has merely minimized the tool, its window will be restored when the menu item is clicked.
The SDM looks for the "toolList.text" file, as given by the SDM_TOOL_LIST environment variable. If no such environment variable is set, either globally or via the support directory (See Runtime Environment), no "Tools" menu appears on the SDM.