Notes for Workbench Replacements ================================ Workbench replacements usually patch some of the vectors in the workbench.library to redirect services which are normally offered by the Workbench (AppIcons, AppWindows and AppMenus) on them. As of V44, the number of vectors to be patched have increased as well as the functionality to be emulated. It is important for those applications to duplicate ALL of the new Workbench features because V44-aware or V44-only applications will just check what version of the workbench.library is installed and assume that the new functionality is there if it is at least 44. This includes (but is not limited to) drop zones, new AppIcon features and calls such as WorkbenchControl(), OpenWorkbenchObject(). Failing to do so, would break compatibility with many applications that are going to appear in the next future. Note that OpenWorkbenchObject() fails if it is invoked when the Workbench program is not running. This behaviour prevents using of this function by Workbench replacement applications, which are expected to provide their own code to launch Workbench applications. To be 100% compatible to the Workbench, the replacement should also provide an ARexx port named "WORKBENCH" which offers the same set of ARexx commands supported by the Workbench. Now that the workbench.library became a disk based library, the most sensible way to duplicate its functionality would be to replace the library altogether instead of patching all of its vectors.