Whenever &xwp; starts a program object from the &cfgfdr; (that is, when you select the respective menu item in a folder &popmenu;), it can perform a few tricks on them.

These tricks are the following:

  1. If the startup directory of the program object is empty, &xwp; will temporarily set the directory of the folder whose &popmenu; was used before actually starting the program. This means that you can start the same program from all folders' &popmenu;s, but with a variable startup directory, being the directory of the folder whose &popmenu; was used.

    For example, with the default configuration, the command line objects have empty startup directories. This is why you can start command lines "in" the folder whose &popmenu; was used.

    If you wish to disable this behaviour, simply specify a startup directory in a program object (e.g. "C:\"), and &xwp; will leave it alone. Instead, it will always use the startup directory which you have specified.

  2. If the parameter list of the program object does not contain a trailing "%" sign, the directory of the folder you used will be passed as a parameter to the program.

    This allows you to pass a fully qualified directory name as an argument to a program. You can disable this feature completely on the "&popmenu;s" pages "Workplace Shell" object.

    If you wish to disable this behaviour for one menu item only (not all programs can handle directories as parameters), add a "%" sign to the "Parameters" list of the respective program object. &xwp; will omit passing the additional parameter. This is the case, for example, with the command line objects of the default configuration.

  3. You can append the current contents of the clipboard to the parameter list of the clipboard by putting a "%**C" symbol into the parameter list. This can appear at any position of the parameters. This is case-sensitive; "%**c" (in lower case) will not work.

    Example: Path and filename = "e.exe"; parameters = "%**C" will start the system editor, interpreting the contents of the clipboard as a file name.

    Note that the contents of the clipboard will be truncated so that the maximum length of the parameter list will not be exceeded. With &os2;, the maximum path length is 260 characters.

  4. If the program title contains a "~" character, &xwp; will remove it temporarily before starting the program. You can also switch off this behavior in the "Workplace Shell" object.
  5. You can now insert a separator into a menu by specifying "---" (three dashes) in a program object's title. (A separator is a horizontal line to optically separate groups of menu items.) In this case, &xwp; will ignore the program object's settings (such as the executable, parameters etc.) and simply insert a separator into the menu. This works for the main &popmenu; as well as submenus.
&xwp; implements the features 1.-4. by actually changing the program object's settings for a fraction of a second: the settings are changed, the program object is opened, and then the settings are reset to the original values.