NsCDE subpanels are simple transient FvwmButton docks. As Front Panel, they are also as much as possible similar to original CDE forms of the same purpose. Some applications in them are predefined, and discovered if installed, and the rest is up to user to populate. Their purpose is not to show all possible GUI applications installed on the system as right-click root menu. They are meant for favorite, important and often used apps.
There is one main difference between CDE and NsCDE subpanels: Install Icon action calls special NsCDE tool for actions defining. There is no drag and drop from the app manager (which also doesn't exist).
On every subpanel, last selected entry will remain hilighted next time subpanel is popped up again.
Each Subpanel's application item or entry has additional third mouse pointer button action which
will pop up dinamically populated contextual menu named after item's title. Here, there are actions
to move up or down item for one space on the subpanel, to move item to the beginning or the end of
the subpanel's application list, as well as to delete item from the subpanel (warning message will
appear before deletion is really performed). First menu item is the same as menu name: title of
the application from submenu. If clicked, it will perform default action as if item's title or icon
was clicked on the submenu itself. This is a kind of a escape from the contextual menu, but to
still use subpanel's default action without repeating opening of a submenu again.
If move or delete action is silently not performed, this is most likely the situation where
user's $FVWM_USERDIR/Subpanels.actions
is newer than
$FVWM_USERDIR/NsCDE-Subpanels.conf
, and must be rebuilt for configuration
actions to take a place properly. In that case, repeated operation must succeed, otherwise,
see X session error log for details.
Subpanels, like in CDE has titlebars but as windows on screen they are without borders and handles. They have only left menu button like other windows, but with one exception: there are no actions for closing window and re-positioning it (no sense in this), but they have "Refresh Subpanel" and "Subpanel Settings" controls. First one kills process module, re-reads it's configuration and starts it on the next click on Front Panel subpanel launcher. Subpanel Settings is the small and simple FvwmScript tool which allows one to rename Subpanel, set it's width for application titles to fit if necessary, and to enable or disable that particular Subpanel.
On the first change with Install Icon or Subpanel Settings,
non-FVWM configuration file Subpanels.actions will be created in the
$FVWM_USERDIR
, from where all subpanels changed from default will be read
by the /usr/local/libexec/nscde/generate_subpanels, while the rest will be
generated from the /usr/local/etc/nscde/Subpanels.actions
. This file can also
be edited by hand (ok, not by hand, but editor will suffice) and the result may be applied by
calling generate_subpanels and then f_ReadCfg Subpanels
.
Generated file is called NsCDE-Subpanels.conf
and it is expected in the
$FVWM_USERDIR
. If not found there,
/usr/local/etc/nscde/NsCDE-Subpanels.conf
will be read instead.
Syntax of the Subpanels.actions is explained in the
Configuration files explained section.
Presently, there is one workaround here: as much as FVWM, and specially FvwmButtons are
very flexible and configurable, no title for the buttons app can be set apart
from module alias, but module alias doesn't support names with spaces in them.
Internal names as "NsCDE-SubpanelX" are for that reason referenced in
NsCDE-FrontPanel.conf
, and are internally mandatory names of their Subpanels.
Since there is no configuration option for subpanel to set Window Title, we are using here
tool xdotool(1) which is run on Subpanel initialization with a delay of 3,2
seconds (internal workaround for xdotool) and this then takes infostore
variable NsCDE-SubpanelX-Name
and sets literal, system default or user picked
name of the subpanel. Presently, an alternative option is to apply FvwmButtons patch which introduces a
WindowName option to it's configuration. Of course, patch will be proposed
to the upstream FVWM.
The rest about Subpanel, or to say their visible outfit, and their main function are the same as in CDE - a nice, heavyweight and elegant application launchers.