Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vuewmrc(4X) — bsd — Apollo Domain/OS SR10.4.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

vuewm(1X)

vuestyle(1X)

XmInstallImage(3X)

X(1)



VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



NAME
      vuewmrc - The HP VUE Workspace Manager Resource Description
     File.


DESCRIPTION
     The vuewm resource description file is a supplementary
     resource file that controls much of the operation of the HP
     Visual User Environment Window Manager (vuewm).  It contains
     descriptions of resources that are to be used by vuewm, and
     that cannot be easily written using standard X Window Sys-
     tem, Version 11 resource syntax:
             Vuewm*resource_id

     The resource description file contains entries that are
     cross-referenced by entries in the resource defaults files
     (for example, /usr/vue/app-defaults/Vuewm).  For example,
     the resource description file enables you to specify dif-
     ferent types of window menus; on the other hand, the default
     resource file enables you to specify which of these window
     menus the manager should use for a particular window.

     The specifications of the resource description file sup-
     ported by the HP VUE workspace manager are a strict superset
     of the specifications supported by the HP/OSF Motif Window
     Manager (mwm 1.0).  In other words, the
     /usr/lib/X11/system.mwmrc or $HOME/.mwmrc file that you've
     used for mwm is immediately usable by vuewm: Simply open the
     vuewm resource description file with a text editor (make a
     copy first!), then cut and paste specifications from your
     current .mwmrc file into it.  When you restart the workspace
     manager, your menu, key, and button definitions take immedi-
     ate effect.

     Location
     The workspace manager searches for one of the following
     resource description files, where $LANG is the value of the
     language environment on a per-user basis:

     $HOME/.vue/$LANG/vuewmrc

     $HOME/.vue/vuewmrc

     /usr/vue/config/$LANG/sys.vuewmrc

     /usr/vue/config/sys.vuewmrc

     The first file found is the first used.

     If none is found, then a set of built-in specifications is
     used.




HP VUE 3.0 (7/92)                                               1





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     A particular resource description file can be selected using
     the configFile resource.

     The following shows how a different resource description
     file can be specified from the command line:

             /usr/vue/bin/vuewm -xrm "Vuewm*configFile: myvuewmrc"

     Resource Types

     The following types of resources can be described in the
     vuewm resource description file:

     Buttons        Workspace manager functions can be bound
                    (associated) with button events.

     Keys           Workspace manager functions can be bound
                    (associated) with key press events.

     Menus          Menu panes can be used for the window menu
                    and other menus posted with key bindings and
                    button bindings.

     Front Panel    The vuewm front panel can be configured for a
                    custom content or layout.


VUEWM RESOURCE DESCRIPTION FILE SYNTAX
     The vuewm resource description file is a standard text file
     that contains items of information separated by blanks,
     tabs, and new lines characters.  Blank lines are ignored.
     Items or characters can be quoted to avoid special interpre-
     tation (e.g., the comment character can be quoted to prevent
     it from being interpreted as the comment character).  A
     quoted item can be contained in double quotes (").

     Single characters can be quoted by preceding them by the
     back-slash character (\), except for workspace names, which
     may contain no back-slash characters.

     All text from an unquoted # to the end of the line is
     regarded as a comment and is not interpreted as part of a
     resource description.  If ! is the first character in a
     line, the line is regarded as a comment.

     Workspace Manager Functions
     Workspace manager functions can be accessed with button and
     key bindings, and with workspace manager menus.  Functions
     are indicated as part of the specifications for button and
     key binding sets, and menu panes.  The function specifica-
     tion has the following syntax:




HP VUE 3.0 (7/92)                                               2





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



           function =        function_name [function_args]
           function_name =   workspace manager function
           function_args =   {quoted_item | unquoted_item}

     The following functions are supported.  If a function is
     specified that isn't one of the supported functions then it
     is interpreted by vuewm as f.nop.


          f.action
               This function causes the specified action to be
               invoked by means of the message server.

          f.beep
               This function causes a beep.

          f.circle_down [icon | window]
               This function causes the window or icon that is on
               the top of the window stack to be put on the bot-
               tom of the window stack (so that it is no longer
               obscuring any other window or icon).  This func-
               tion affects only those windows and icons that are
               obscuring other windows and icons, or that are
               obscured by other windows and icons.  Secondary
               windows (i.e. transient windows) are restacked
               with their associated primary window.  Secondary
               windows always stay on top of the associated pri-
               mary window and there can be no other primary win-
               dows between the secondary windows and their pri-
               mary window.  If an icon function argument is
               specified, then the function applies only to
               icons.  If a window function argument is specified
               then the function applies only to windows.

          f.circle_up [icon | window]
               This function raises the window or icon on the
               bottom of the window stack (so that it is not
               obscured by any other windows).  This function
               affects only those windows and icons that are
               obscuring other windows and icons, or that are
               obscured by other windows and icons.  Secondary
               windows (i.e. transient windows) are restacked
               with their associated primary window.  If an icon
               function argument is specified then the function
               applies only to icons.  If an window function
               argument is specified then the function applies
               only to windows.

          f.exec or !
               This function causes command to be executed (using
               the value of the $SHELL environment variable if it
               is set, otherwise /bin/sh).  The ! notation can be



HP VUE 3.0 (7/92)                                               3





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               used in place of the f.exec function name.

          f.focus_color
               This function sets the colormap focus to a client
               window.  If this function is done in a root con-
               text, then the default colormap (setup by the X
               Window System for the screen where vuewm is run-
               ning) is installed and there is no specific client
               window colormap focus.  This function is treated
               as f.nop if colormapFocusPolicy is not explicit.

          f.focus_key
               This function sets the keyboard input focus to a
               client window or icon.  This function is treated
               as f.nop if keyboardFocusPolicy is not explicit or
               the function is executed in a root context.

          f.goto_workspace
               This function causes the workspace manager to
               switch to the specified workspace.  If no
               workspace exists by the specified name, then no
               action occurs.

          f.help [topic [volume]]
               This function displays help on the specified topic
               and volume.  If no volume is given, then the
               workspace manager volume is assumed. If no topic
               is given, then help on the front panel is shown.

          f.help_mode
               This function causes the workspace manager to
               enter into help mode. In help mode, the pointer
               changes shape to indicate that the window manager
               is waiting for you to select a front panel con-
               trol. Any help defined for the control is then
               shown in a help window.

          f.kill
               If the WM_DELETE_WINDOW protocol is set up, the
               client is sent a client message event indicating
               that the client window should be deleted.  If the
               WM_SAVE_YOURSELF protocol is set up and the
               WM_DELETE_WINDOW protocol is not set up, the
               client is sent a client message event indicating
               that the client needs to prepare to be terminated.
               If the client does not have the WM_DELETE_WINDOW
               or WM_SAVE_YOURSELF protocol set up, this function
               causes a client's X connection to be terminated
               (usually resulting in termination of the client).
               Refer to the description of the quitTimeout
               resource and the WM_PROTOCOLS property.




HP VUE 3.0 (7/92)                                               4





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



          f.lower [-client]
               This function lowers a client window to the bottom
               of the window stack (where it obscures no other
               window).  Secondary windows (i.e. transient win-
               dows) are restacked with their associated primary
               window.  The client argument indicates the name or
               class of a client to lower.  If the client argu-
               ment is not specified then the context that the
               function was invoked in indicates the window or
               icon to lower.

          f.maximize
               This function causes a client window to be
               displayed with its maximum size.

          f.menu
               This function associates a cascading (pull-right)
               menu with a menu pane entry or a menu with a but-
               ton or key binding.  The menu_name function argu-
               ment identifies the menu to be used.

          f.minimize
               This function causes a client window to be minim-
               ized (iconified).  When a window is minimized with
               no icon box in use, and if the lowerOnIconify
               resource has the value True (the default), the
               icon is placed on the bottom of the window stack
               (such that it obscures no other window).  If an
               icon box is used, then the client's icon changes
               to its iconified form inside the icon box.  Secon-
               dary windows (i.e. transient windows) are minim-
               ized with their associated primary window.  There
               is only one icon for a primary window and all its
               secondary windows.

          f.move
               This function allows a client window or icon to be
               moved interactively.

          f.next_cmap
               This function installs the next colormap in the
               list of colormaps for the window with the colormap
               focus.

          f.next_key [icon | window | transient]
               This function sets the keyboard input focus to the
               next window/icon in the set of windows/icons
               managed by the workspace manager (the ordering of
               this set is based on the stacking of windows on
               the screen).  This function is treated as f.nop if
               keyboardFocusPolicy is not explicit.  The keyboard
               input focus is only moved to windows that do not



HP VUE 3.0 (7/92)                                               5





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               have an associated secondary window that is appli-
               cation modal.  If the transient argument is speci-
               fied, then transient (secondary) windows are
               traversed (otherwise, if only window is specified,
               traversal is done only to the last focused window
               in a transient group).  If an icon function argu-
               ment is specified, then the function applies only
               to icons.  If a window function argument is speci-
               fied, then the function applies only to windows.

          f.next_workspace
               This function causes the workspace manager to
               switch to the next workspace.  If you're viewing
               the last workspace, the switch occurs to the first
               workspace.

          f.nop
               This function does nothing.

          f.normalize
               This function causes a client window to be
               displayed with its normal size.  Secondary windows
               (i.e. transient windows) are placed in their nor-
               mal state along with their associated primary win-
               dow.

          f.normalize_and_raise
               This function causes a client window to be
               displayed with its normal size and raised to the
               top of the window stack.  Secondary windows (i.e.
               transient windows) are placed in their normal
               state along with their associated primary window.

          f.occupy_all
               This function causes the associated window to be
               placed in all workspaces.

          f.pack_icons
               This function is used to relayout icons (based on
               the layout policy being used) on the root window
               or in the icon box.  In general this causes icons
               to be "packed" into the icon grid.

          f.pass_keys
               This function is used to enable/disable (toggle)
               processing of key bindings for workspace manager
               functions.  When it disables key binding process-
               ing all keys are passed on to the window with the
               keyboard input focus and no workspace manager
               functions are invoked.  If the f.pass_keys func-
               tion is invoked with a key binding to disable key
               binding processing the same key binding can be



HP VUE 3.0 (7/92)                                               6





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               used to enable key binding processing.

          f.post_wmenu
               This function is used to post the window menu.  If
               a key is used to post the window menu and a window
               menu button is present, the window menu is
               automatically placed with its top-left corner at
               the bottom-left corner of the window menu button
               for the client window.  If no window menu button
               is present,  the window menu is placed at the
               top-left corner of the client window.

          f.prev_cmap
               This function installs the previous colormap in
               the list of colormaps for the window with the
               colormap focus.

          f.prev_key [icon | window | transient]
               This function sets the keyboard input focus to the
               previous window/icon in the set of windows/icons
               managed by the workspace manager (the ordering of
               this set is based on the stacking of windows on
               the screen).  This function is treated as f.nop if
               keyboardFocusPolicy is not explicit.  The keyboard
               input focus is only moved to windows that do not
               have an associated secondary window that is appli-
               cation modal.  If the transient argument is speci-
               fied, then transient (secondary) windows are
               traversed (otherwise, if only window is specified,
               traversal is done only to the last focused window
               in a transient group).  If an icon function argu-
               ment is specified then the function applies only
               to icons.  If an window function argument is
               specified then the function applies only to win-
               dows.

          f.prev_workspace
               This function causes the workspace manager to
               switch to the previous workspace.  If you're view-
               ing the first workspace, the switch occurs to the
               last workspace.

          f.quit_vuewm
               This function terminates vuewm (but NOT the X win-
               dow system).

          f.raise [-client]
               This function raises a client window to the top of
               the window stack (where it is obscured by no other
               window).  Secondary windows (i.e.  transient win-
               dows) are restacked with their associated primary
               window.  The client argument indicates the name or



HP VUE 3.0 (7/92)                                               7





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               class of a client to raise.  If the client argu-
               ment is not specified then the context that the
               function was invoked in indicates the window or
               icon to raise.

          f.raise_lower
               This function raises a client window to the top of
               the window stack if it is partially obscured by
               another window, otherwise it lowers the window to
               the bottom of the window stack.  Secondary windows
               (i.e. transient windows) are restacked with their
               associated primary window.

          f.refresh
               This function causes all windows to be redrawn.

          f.refresh_win
               This function causes a client window to be
               redrawn.

          f.remove
               This function causes a client window to be removed
               from the current workspace.  If the client window
               exists only in this workspace, no action occurs.

          f.resize
               This function allows a client window to be
               interactively resized.

          f.restart
               This function causes vuewm to be restarted (effec-
               tively terminated and re-executed).

          f.send_msg message_number
               This function sends a client message of the type
               _MOTIF_WM_MESSAGES with the message_type indicated
               by the message_number function argument.  The
               client message is sent if message_number is
               included in the client's _MOTIF_WM_MESSAGES pro-
               perty.  A menu item label is grayed out if the
               menu item is used to do f.send_msg of a message
               that is not included in the client's
               _MOTIF_WM_MESSAGES property.

          f.separator
               This function causes a menu separator to be put in
               the menu pane at the specified location (the label
               is ignored).

          f.set_behavior
               This function causes the workspace manager to res-
               tart with the default behavior (if a custom



HP VUE 3.0 (7/92)                                               8





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               behavior is configured) or a custom behavior (if a
               default behavior is configured).

          f.title
               This function inserts a title in the menu pane at
               the specified location.

          f.toggle_frontpanel
               This function causes the front panel component of
               the workspace manager to be minimized or, alter-
               nately, normalized.

          f.version
               This function causes the workspace manager to
               display its release version in a dialog box.

          f.workspace_presence
               This function posts the workspace presence dialog
               box. This allows you to view and set the workspace
               in which a particular window resides. The root
               context is disallowed for this function.

          f.workspace_rename
               This function posts the workspace rename dialog
               box. This allows you to rename the current
               workspace.

          Each function may be constrained as to which resource
          types can specify the function (e.g., menu pane) and
          also what context the function can be used in (e.g.,
          the function is done to the selected client window).
          Function contexts are

          root           No client window or icon has been
                         selected as an object for the function.

          window         A client window has been selected as an
                         object for the function.  This includes
                         the window's title bar and frame.  Some
                         functions are applied only when the win-
                         dow is in its normalized state (e.g.,
                         f.maximize) or its maximized state
                         (e.g., f.normalize).

          icon           An icon has been selected as an object
                         for the function.

          If a function is specified in a type of resource where
          it is not supported or is invoked in a context that
          does not apply then the function is treated as f.nop.
          The following table indicates the resource types and
          function contexts in which workspace manager functions



HP VUE 3.0 (7/92)                                               9





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



          apply.

           Function                 Contexts             Resources
     ________________________________________________________________

     f.action                root,icon,window         button,key,menu
     f.beep                  root,icon,window         button,key,menu
     f.circle_down           root,icon,window         button,key,menu
     f.circle_up             root,icon,window         button,key,menu
     f.exec                  root,icon,window         button,key,menu
     f.focus_color           root,icon,window         button,key,menu
     f.focus_key             root,icon,window         button,key,menu
     f.goto_workspace        root,icon,window         button,key,menu
     f.help                  root,icon,window         button,key,menu
     f.help_mode             root,icon,window         button,key,menu
     f.kill                  icon,window              button,key,menu
     f.lower                 root,icon,window         button,key,menu
     f.maximize              icon,window(normal)      button,key,menu
     f.menu                  root,icon,window         button,key,menu
     f.minimize              window                   button,key,menu
     f.move                  icon,window              button,key,menu
     f.next_cmap             root,icon,window         button,key,menu
     f.next_key              root,icon,window         button,key,menu
     f.next_workspace        root,icon,window         button,key,menu
     f.nop                   root,icon,window         button,key,menu
     f.normalize             icon,window(maximized)   button,key,menu
     f.normalize_and_raise   icon,window              button,key,menu
     f.occupy_all            icon, window             button,key,menu
     f.pack_icons            root,icon,window         button,key,menu
     f.pass_keys             root,icon,window         button,key,menu
     f.post_wmenu            root,icon,window         button,key
     f.prev_cmap             root,icon,window         button,key,menu
     f.prev_key              root,icon,window         button,key,menu
     f.prev_workspace        root,icon,window         button,key,menu
     f.quit_vuewm            root                     button,key,menu
     f.raise                 root,icon,window         button,key,menu
     f.raise_lower           icon,window              button,key,menu
     f.refresh               root,icon,window         button,key,menu
     f.refresh_win           window                   button,key,menu
     f.remove                root,icon,window         button,key,menu
     f.resize                window                   button,key,menu
     f.restart               root                     button,key,menu
     f.send_msg              icon,window              button,key,menu
     f.separator             root,icon,window         menu
     f.set_behavior          root,icon,window         button,key,menu
     f.title                 root,icon,window         menu
     f.toggle_frontpanel     root,icon,window         button,key,menu
     f.version               root,icon,window         button,key,menu
     f.workspace_presence    window                   button,key,menu
     f.workspace_rename      root,icon,window         button,key,menu





HP VUE 3.0 (7/92)                                              10





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



WORKSPACE MANAGER EVENT SPECIFICATION
     Events are indicated as part of the specifications for but-
     ton and key binding sets, and menu panes.

     Button events have the following syntax:

         button =          [modifier_list]<button_event_name>
         modifier_list =   modifier_name {modifier_name}

     All modifiers specified are interpreted as being exclusive
     (this means that only the specified modifiers can be present
     when the button event occurs).  The following table indi-
     cates the values that can be used for modifier_name.  The
     [Alt] key is frequently labeled [Extend] or [Meta].  Alt and
     Meta can be used interchangeably in event specification.

                       Modifier   Description
                       _______________________
                       Ctrl       Control Key
                       Shift      Shift Key
                       Alt        Alt/Meta Key
                       Meta       Meta/Alt Key
                       Lock       Lock Key
                       Mod1       Modifier1
                       Mod2       Modifier2
                       Mod3       Modifier3
                       Mod4       Modifier4
                       Mod5       Modifier5

     The following table indicates the values that can be used
     for button_event_name.

               _______________________________________
               Btn1Down     Button 1 Press
               Btn1Up       Button 1 Release
               Btn1Click    Button 1 Press and Release
               Btn1Click2   Button 1 Double Click
               Btn2Down     Button 2 Press
               Btn2Up       Button 2 Release
               Btn2Click    Button 2 Press and Release
               Btn2Click2   Button 2 Double Click
               Btn3Down     Button 3 Press
               Btn3Up       Button 3 Release
               Btn3Click    Button 3 Press and Release
               Btn3Click2   Button 3 Double Click
               Btn4Down     Button 4 Press
               Btn4Up       Button 4 Release
               Btn4Click    Button 4 Press and Release
               Btn4Click2   Button 4 Double Click
               Btn5Down     Button 5 Press
               Btn5Up       Button 5 Release
               Btn5Click    Button 5 Press and Release



HP VUE 3.0 (7/92)                                              11





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



               Btn5Click2   Button 5 Double Click

     Key events that are used by the workspace manager for menu
     mnemonics and for binding to workspace manager functions are
     single key presses; key releases are ignored.  Key events
     have the following syntax:

         key =             [modifier_list]<Key>key_name
         modifier_list =   modifier_name {modifier_name}

     All modifiers specified are interpreted as being exclusive
     (this means that only the specified modifiers can be present
     when the key event occurs).  Modifiers for keys are the same
     as those that apply to buttons.  The key_name is an X11
     keysym name.  Keysym names can be found in the keysymdef.h
     file (remove the XK_ prefix).


BUTTON BINDINGS
     The buttonBindings resource value is the name of a set of
     button bindings that are used to configure workspace manager
     behavior.  A workspace manager function can be done when a
     button press  occurs with the pointer over a framed client
     window, an icon or the root window.  The context for indi-
     cating where the button press applies is also the context
     for invoking the workspace manager function when the button
     press is done (significant for functions that are context
     sensitive).

     The button binding syntax is

          Buttons bindings_set_name
          {
              button    context    function
              button    context    function
                                   .
                                   .
              button    context    function
          }


     The syntax for the context specification is

   context =   object[|context]
   object =    root | icon | window | title | frame | border | app

     The context specification indicates where the pointer must
     be for the button binding to be effective.  For example, a
     context of window indicates that the pointer must be over a
     client window or window management frame for the button
     binding to be effective.  The frame context is for the win-
     dow management frame around a client window (including the



HP VUE 3.0 (7/92)                                              12





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     border and titlebar), the border context is for the border
     part of the window management frame (not including the
     titlebar), the title context is for the title area of the
     window management frame, and the app context is for the
     application window (not including the window management
     frame).

     If an f.nop function is specified for a button binding, the
     button binding is not done.


KEY BINDINGS
     The keyBindings resource value is the name of a set of key
     bindings that are used to configure workspace manager
     behavior.  A window manager function can be done when a par-
     ticular key is pressed. The context in which the key binding
     applies is indicated in the key binding specification.  The
     valid contexts are the same as those that apply to button
     bindings.

     The key binding syntax is

          Keys bindings_set_name
          {
              key    context    function
              key    context    function
                          .
                          .
              key    context    function
          }


     If an f.nop function is specified for a key binding, the key
     binding is not done.  If an f.post_wmenu or f.menu function
     is bound to a key, vuewm automatically uses the same key for
     removing the menu from the screen after it has been popped
     up.

     The context specification syntax is the same as for button
     bindings.  For key bindings, the frame, title, border, and
     app contexts are equivalent to the window context.  The con-
     text for a key event is the window or icon that has the key-
     board input focus (root if no window or icon has the key-
     board input focus).


MENU PANES
     Menus can be popped up using the f.post_wmenu and f.menu
     workspace manager functions.  The context for workspace
     manager functions that are done from a menu is root, icon or
     window depending on how the menu was popped up.  In the case
     of the window menu or menus popped up with a key binding,



HP VUE 3.0 (7/92)                                              13





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     the location of the keyboard input focus indicates the con-
     text.  For menus popped up using a button binding, the con-
     text of the button binding is the context of the menu.

     The menu pane specification syntax is

          Menu menu_name
          {
              label  [mnemonic]  [accelerator]   function
              label  [mnemonic]  [accelerator]   function
                          .
                          .
              label  [mnemonic]  [accelerator]   function
          }


     Each line in the Menu specification identifies the label for
     a menu item and the function to be done if the menu item is
     selected.  Optionally a menu button mnemonic and a menu but-
     ton keyboard accelerator may be specified.  Mnemonics are
     functional only when the menu is posted and keyboard traver-
     sal applies.

     The label may be a string or a bitmap file.  The label
     specification has the following syntax:

             label =         text | bitmap_file
             bitmap_file =   @file_name
             text =          quoted_item | unquoted_item

     The string encoding for labels must be compatible with the
     menu font that is used.  Labels are greyed out for menu
     items that do the f.nop function or an invalid function or a
     function that doesn't apply in the current context.

     A mnemonic specification has the following syntax

         mnemonic =   _character

     The first matching character in the label is underlined.  If
     there is no matching character in the label, no mnemonic is
     registered with the workspace manager for that label.
     Although the character must exactly match a character in the
     label, the mnemonic does not execute if any modifier (such
     as Shift) is pressed with the character key.

     The accelerator specification is a key event specification
     with the same syntax as is used for key bindings to
     workspace manager functions.






HP VUE 3.0 (7/92)                                              14





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



FRONT PANEL CONTENT AND LAYOUT
     The resource description file enables you to specify the
     content and layout of the front panel, including the number
     of controls, their size and arrangement within the front
     panel, and their operation.

     The layout is arranged horizontally, in terms of boxes of
     controls.

     The front panel specification syntax is demonstrated in the
     sys.vuewmrc system file included in the /usr/vue/config
     directory.  Please refer to that file for working examples
     of the front panel specification language.


FRONT PANEL SPECIFICATION SYNTAX
     The front panel specification language for HP VUE 3.0 is
     keyword-oriented, rather than field-oriented as it was in HP
     VUE 2.0, to make front panels easier to construct.

     Each major construct has the general form of:

          component <component_name>
          {
              [attribute
              ...]
              component_ref
              ...
          }


     where component can be PANEL, BOX, or CONTROL.
     component_ref is a reference to another component defini-
     tion. Nested definitions are not allowed.

     A front panel is constructed hierarchically, by first speci-
     fying a PANEL which includes references to one or more
     BOXes. Then the BOXes is specified. Each box refers to one
     or more CONTROLs.  Finally, each CONTROL is specified. A
     CONTROL specification may be referred to by more than one
     BOX.

     The following conventions are used for describing the panel
     definition language:

          Items shown in italics (e.g. box_ref) represent
          language constructs.

          Items shown in upper case (e.g. "PANEL") are keywords.

          Variables are enclosed in angle brackets (e.g.
          <panel_name>).



HP VUE 3.0 (7/92)                                              15





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



          Optional elements are enclosed in square brackets (`[',
          `]').

          Repeated elements are indicated with an ellipsis
          ("...").

          Disjuncts are enclosed in parentheses and separated by
          a vertical bar (e.g. "(primary | secondary | sub-
          panel)").



               panel_definition =

               PANEL <panel_name>
               {
                   [panel_attribute
                   ...]
                   box_ref
                   ...
               }


               panel_attribute =
               (
                   HELP_STRING    <string>           |
                   HELP_TOPIC     <help_topic_name>
               )


               box_ref =

                   BOX  <box_name>



     The panel definition is the top-level front panel construct.
     It lists the boxes that make up the front panel. It may also
     contain a help string (HELP_STRING), or refer to a prede-
     fined vuewm help topic (HELP_TOPIC). Panel help is a second
     level fallback. It is triggered during item help or context
     help when there is no help specified for the active control
     or box.



          box_definition =

          BOX <box_name>
          {
              [box_attribute
              ...]



HP VUE 3.0 (7/92)                                              16





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



              (control_ref | switch_ref)
              ...
          }


          control_ref =

              CONTROL  <control_name>


          switch_ref =

              SWITCH  <switch_name>


          box_attribute =
          (
              TYPE             box_type          |
              BACKGROUND_TILE  <pixmap>          |
              COLOR_SET        <number>          |
              HELP_STRING      <string>          |
              HELP_TOPIC       <help_topic_name> |
              LAYOUT_POLICY    layout_type       |
          )


          box_type =
          (
              primary     |
              secondary   |
              subpanel
          )


          layout_type =
          (
              standard    |
              as_needed
          )


     The box definition describes each box in the front panel.
     There are three types of boxes. The primary box is larger.
     Controls in a primary box may contain subpanels. The secon-
     dary box is smaller and has a ribbed background by default.
     Controls in secondary boxes cannot contain subpanels. Both
     primary and secondary boxes are horizontal.

     A box of type subpanel is vertically oriented and associated
     with a control in a primary box (see the SUBPANEL attribute
     for controls). A subpanel has a small button automatically
     added to the bottom for dismissing the subpanel. Subpanels



HP VUE 3.0 (7/92)                                              17





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     are useful for adding functionality to the front panel
     without permanently increasing the size of the front panel.

     A standard box layout is one in which the height of each
     primary and secondary box is fixed based on the resolution
     of the screen.  This restriction can be relaxed by choosing
     a LAYOUT_POLICY of as_needed. This allows the height of the
     box to grow based on the size of the controls inside.  Sub-
     panels are not affected by LAYOUT_POLICY.  The width of each
     subpanel box is determined by the widest control label.

     A box can be given a distinctive background with
     BACKGROUND_TILE. The value can be a predefined pixmap image
     (see XmInstallImage(3X)), or a bitmap or X pixmap file name.
     The default background for a primary or subpanel box is
     background. The default background for secondary box is rib.

     You can choose a different HP VUE color set for a box by
     using the COLOR_SET attribute. There are eight HP VUE color
     sets, numbered 1 to 8.  By default, primary and subpanel
     boxes use the primary color set (specified by the pri-
     maryColorSetId resource).  Secondary boxes default to the
     secondary color set (specified by the secondaryColorSetId
     resource).

     Help for a box is a first level fallback. It is triggered
     during item help or context help when there is no help
     specified for the active control.

     Finally, the box definition includes the list of controls
     that are contained in the box. The workspace switch (SWITCH)
     is a special control. There can be only one workspace switch
     and it must be in a primary or secondary box. Also, there
     can be only one busy control and it must be in a secondary
     box.



          control_definition =

          CONTROL <control_name>
          {
              [control_attribute
              ...]
          }


          control_attribute =
          (
              TYPE               control_type          |
              ALTERNATE_IMAGE    <image_file_name>     |
              CLIENT_GEOMETRY    geometry_string       |



HP VUE 3.0 (7/92)                                              18





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



              CLIENT_NAME        <string>              |
              DROP_ACTION        command_definition    |
              DROP_ANIMATION     <animation_name>      |
              HELP_STRING        <string>              |
              HELP_TOPIC         <help_topic_name>     |
              IMAGE              <image_file_name>     |
              LABEL              <string>              |
              MONITOR_FILE       <file_name>           |
              PUSH_ACTION        command_definition    |
              PUSH_ANIMATION     <animation_name>      |
              PUSH_RECALL        (true | false)        |
              SUBPANEL           <box_name>
          )


          control_type =
          (
              clock          |
              date           |
              blank          |
              busy           |
              button         |
              client         |
              iconbox        |
              mail           |
              monitor_file
          )


          geometry_string =

              [width][xheight]


          command_definition =
          (
              f.action    <action_specification>    |
              f.exec      <command_specification>   |
              f.help      <help_topic_name>         |
              f.help_mode
          )


     A control definition is needed for each control you have in
     your front panel. Controls exhibit different behavior based
     on their type:









HP VUE 3.0 (7/92)                                              19





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



        _____________________________________________________
       |____________________________________________________|
       | clock          analog clock                        |
       | date           show month, day, and day of the week|
       | blank          space holder                        |
       | busy           activity light and logout           |
       | button         push button control                 |
       | client         embedded client                     |
       | iconbox        controls appearance of iconbox      |
       | mail           special for monitoring arriving mail|
       | monitor_file   monitors an empty/non-empty file    |
       |____________________________________________________|


     The clock and date controls are self-explanatory. The format
     for the date control can be set via the format resource (see
     vuewm (1X)).

     The blank control can be used to insert spaces between con-
     trols or save positions for future expansion.

     The busy control alternates between its IMAGE and
     ALTERNATE_IMAGE to indicate system activity. This control is
     configured by default to perform the logout function when
     pressed.  Because of this, the busy control has special
     placement behavior.  It is always moved to the right side of
     the box it is in. As a box fills up, controls that overlap
     the busy control are removed.  The can be only one busy con-
     trol and it must be in a secondary box.

     The behavior of the button control type is determined by its
     PUSH_ACTION.

     Other clients, such as xload, may be embedded in the front
     panel in controls of type client. Set the CLIENT_GEOMETRY if
     you want to alter the size of the area that the client occu-
     pies. You may need to change the LAYOUT_POLICY of the
     enclosing box to as_needed.  Clients are matched to their
     controls using the WM_CLASS window property. To insure a
     match, set the CLIENT_NAME for the control to the same
     string that the client puts in the first member of this pro-
     perty. You may examine this property using the xprop (1X)
     command. Normally, you can start the client with a -name
     command line option to set the property to match your con-
     trol.

     The iconbox control causes vuewm to create an iconbox to
     hold the window icons. The control recalls the iconbox to
     the screen after it has been closed. Note that using this
     control prevents enabling and disabling of the iconbox using
     vuestyle.




HP VUE 3.0 (7/92)                                              20





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     Controls of type mail have been tuned to be mail indicators.
     The ALTERNATE_IMAGE is displayed if the mail file (set with
     MONITOR_FILE) grows in size. The normal IMAGE is displayed
     if the control is pressed or the mail file shrinks in size.
     The default mail file is /usr/mail/$LOGNAME.

     Controls of type monitor_file follow the empty/non-empty
     state of the monitored file. If the file is missing or
     empty, the normal IMAGE is shown. If the file exists and is
     non-empty, the ALTERNATE_IMAGE is shown. There is no default
     file, you must set one using MONITOR_FILE.

     A control can be made into a drop zone by adding a
     DROP_ACTION. If a DROP_ANIMATION is specified, that anima-
     tion is used when an item is actually dropped on the con-
     trol.

     Help for a control may be a simple textual string
     (HELP_STRING) or a predefined help topic (HELP_TOPIC). This
     help is triggered when the control is selected during item
     help mode, or when context help on the control is requested
     by pressing the help key (normally F1) when the control has
     the keyboard focus.

     A control can contain an IMAGE, a LABEL, or both. If you
     choose both, it may be necessary to change the LAYOUT_POLICY
     of the box to as_needed.

     A control with a PUSH_ACTION may also have a PUSH_ANIMATION.
     This animation is done when the user presses on the control.

     Normally, a button performs the PUSH_ACTION each time it is
     depressed. If you wish to have only one copy of a client
     started, you can set PUSH_RECALL to true for the control.
     This way, when the client's window appears on the screen,
     the control can keep track of the client and simply bring it
     to the top on subsequent presses rather than starting
     another copy. The rules used for matching are the same as
     for controls of type client. See the discussion on
     CLIENT_NAME.

     A control in a primary box may also have a subpanel. Use
     SUBPANEL to name the subpanel to use. A control with a sub-
     panel has an additional small button added to its top. Press
     this button to show the subpanel.



          switch_definition =

          SWITCH  <switch_name>
          {



HP VUE 3.0 (7/92)                                              21





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



              [switch_attribute
              ...]
          }


          switch_attribute =
          (
              NUMBER_OF_ROWS      <number>          |
              LAYOUT_POLICY       layout_type       |
              HELP_STRING         <string>          |
              HELP_TOPIC          <help_topic_name>
          )



     The workspace switch is a special type of control. You can
     control the number of rows of workspace buttons with
     NUMBER_OF_ROWS. The default value for NUMBER_OF_ROWS is 2.
     If LAYOUT_POLICY is set to as_needed, then the width of the
     switch buttons is determined by the longest workspace title.
     When LAYOUT_POLICY has the default value of standard, the
     geometry of the switch and its contents depends on the reso-
     lution of the screen.  There can only be one workspace
     switch and it must be in a primary or secondary box.


          animation =

          ANIMATION <animation_name>
          {
              <image_file_name>       [<time_delay>]
              ...
          }




     ANIMATIONs are referred to by controls using PUSH_ANIMATION
     or DROP_ANIMATION. Each ANIMATION is a list of images with
     optional time delays (in milliseconds).



INCLUDING FILES
     You may include other files into your vuewmrc file by using
     the include construct. For example:

          INCLUDE
          {
              /users/bob/panels/fp.special
              /users/bob/personal/my.bindings
          }



HP VUE 3.0 (7/92)                                              22





VUEWMRC(4X)         UNIX Programmer's Manual          VUEWMRC(4X)



     causes the files named to be read in and interpreted as an
     additional part of the vuewmrc file.

     Include is a top-level construct. It cannot be nested inside
     another construct.



WARNINGS
     Enabling the iconbox control in the front panel forces the
     resource useIconBox to True. This prevents the Style Manager
     (vuestyle) from turning the iconbox on and off an may cause
     its dialog to show incorrect information about the iconbox.

     Errors that occur as a result of parsing or trying to use
     the resource description file are reported to a log file
     under your home directory: $HOME/.vue/errorlog.  Be sure to
     check this text file if the appearance or behavior of vuewm
     is not what you expect.


FILES
      $HOME/.vue/$LANG/vuewmrc
      $HOME/.vue/vuewmrc
      /usr/vue/config/$LANG/sys.vuewmrc
      /usr/vue/config/sys.vuewmrc
      $HOME/.vue/errorlog


COPYRIGHT
     (c) Copyright 1989,1990,1991,1992 by Open Software Founda-
     tion, Inc.
     (c) Copyright 1987,1988,1989,1990,1992 by Hewlett-Packard
     Company.
     All rights reserved.


ORIGIN
     Open Software Foundation, Inc.  Hewlett-Packard Company.


SEE ALSO
     vuewm(1X), vuestyle(1X), XmInstallImage(3X), and X(1).












HP VUE 3.0 (7/92)                                              23



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026