#*************************************
#
# E.S.O. - VLT project
#
# "@(#) $Id: Vuewmrc,v 1.25 1999/05/09 22:46:24 vltsccm Exp $"
#
# who       when      what
# --------  --------  --------------------------------
# gfilippi  24/12/97  created for PARANAL installation
# gfilippi  24/12/97  do not raise window when click on window (only on frame)
#

#*******************************************************************************
#    VLT Standard Resource Description File for the HP VUE Window Manager 
#    (modified according to VLT standardization on SUN AND HP)
#    
#    See also original HP VUE 3.0 file: /usr/vue/config/sys.vuewmrc Rev. 1.84


###
#
# For information on changing the front panel, consult the "HP VUE
# User's Guide" or select "Front Panel Help" from the Help subpanel.
#
###

###
#
#  Please make a COPY of this file before editing it.
#
#  Personalized copies typically exist as:
#
#       $HOME/.vue/vuewmrc
#
###

#################################################################
#
#  Start HP VUE Front Panel Descriptions
#
#  The front panel is a PANEL containing rows (BOXes).
#  The default front panel has two rows, named "Top" and "Bottom".
#
#  These panel descriptions are arranged into big elements (the top
#  and bottom rows), followed by the small elements (the control
#  descriptions).
#
#################################################################

#################################################################
#
#  Subpanel Descriptions
#
#  The subpanels are defined in files that are listed here.
#  If the file is empty or commented out, no subpanel arrow appears
#  on the control to which the subpanel is attached.
#
###
INCLUDE 
{

    "/usr/vue/config/panels/fp.clock"
    "/usr/vue/config/panels/fp.date"
    "/usr/vue/config/panels/fp.load"
    "/usr/vue/config/panels/fp.style"
    "/usr/vue/config/panels/fp.help"
    "/usr/vue/config/panels/fp.printer"
    "/usr/vue/config/panels/fp.mail"
    "/usr/vue/config/panels/fp.home"
    "/usr/vue/config/panels/fp.tool"
    "/usr/vue/config/panels/fp.terminal"
    "/usr/vue/config/panels/fp.toolbox"
    "/usr/vue/config/panels/fp.trash"
}

#################################################################
#
#  Start Front Panel Description: Regular Session
#
#################################################################
PANEL FrontPanel
{
  BOX             Top
  BOX             Bottom
}

#################################################################
#
#  Regular Session:  Top Row
#
#  The top row is a primary row, containing subpanels and large icons.
#
#  Controls are listed in order, from left to right, and are defined 
#  immediately after the "BOX Bottom" block.
#
###
BOX Top
{
  TYPE             primary
  CONTROL          Clock
  CONTROL          Date
  CONTROL          Load
  CONTROL          Style
  CONTROL          Help
  SWITCH           Switch
  CONTROL          Printer
  CONTROL          Mail
  CONTROL          Home
  CONTROL          Toolboxes
  CONTROL          Trash
  HELP_TOPIC       FPTop
}

#################################################################
#
#  Regular Session:  Bottom Row
#
#  The bottom row is a secondary row.
#
###
BOX Bottom
{
  TYPE             secondary
  CONTROL          Logo
  CONTROL          Lock
  CONTROL          Rename
  CONTROL          Terminal
  CONTROL          TextEdit
  CONTROL          LocalXTerminal
  CONTROL          LocalHPTerminal
  CONTROL          Laserrom
  CONTROL          HPman
  CONTROL          Busy
  HELP_TOPIC       FPBottom
}

#################################################################
#
#  Regular Session:  Top Row Controls
#
###

# Control description:  Clock
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Clock
{
  TYPE             clock
  SUBPANEL         ClockSubpanel
  HELP_TOPIC       FPClock
}

# Control description:  Date
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Date
{
  TYPE             date
  SUBPANEL         DateSubpanel
  HELP_TOPIC       FPDate
}

# Control description:  Load
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Load
{
  TYPE             client
  SUBPANEL         LoadSubpanel
  CLIENT_NAME      vueload
  PUSH_ACTION      f.exec "xload -name vueload -nolabel"
  PUSH_RECALL      true
  HELP_TOPIC       FPLoad
}

# Control description:  Style
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Style
{
  TYPE             button
  SUBPANEL         StyleSubpanel
  IMAGE            stylemg
  PUSH_ACTION      f.action OpenStyleMgr
  PUSH_RECALL      true
  CLIENT_NAME      vuestyle
  HELP_TOPIC       FPStyle
}

# Control description:  Help
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Help
{
  TYPE             button
  SUBPANEL         HelpSubpanel
  IMAGE            helpmgr
  PUSH_ACTION      f.action OpenHelpManager
  HELP_TOPIC       FPHelp
}

# Control description:  Switch
#
SWITCH           Switch
{
  TYPE             switch
  NUMBER_OF_ROWS   2
  HELP_TOPIC       FPSwitch
}

# Control description:  Printer
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
#   Find the ANIMATION block later in this file for the animation
#   sequence for this control.
#
CONTROL Printer
{
  TYPE             button
  SUBPANEL         PrinterSubpanel
  IMAGE            ljet3
  TITLE            "Printer_Information"
  PUSH_ACTION      f.action PrintPush
  DROP_ACTION      f.action Print
  DROP_ANIMATION   PrinterDrop
  HELP_TOPIC       FPPrinter
}

# Control description:  Mail
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
# # Use te1:xmh instead of HP-email
# # #
# CONTROL Mail
# {
#   TYPE             mail
#   IMAGE            mail
#   PUSH_ACTION      f.exec  "remsh te1 -n xmh -display $DISPLAY"
# }
CONTROL Mail
{
  TYPE             mail
  SUBPANEL         MailSubpanel
  IMAGE            mail
  TITLE            "Mail"
  ALTERNATE_IMAGE  mail02
  PUSH_ACTION      f.action MAILER
  DROP_ACTION      f.action MAIL_A_FILE
  PUSH_RECALL      true
  CLIENT_NAME      Mail
  MONITOR_FILE     /usr/mail/$LOGNAME
  HELP_TOPIC       FPMail
}

# Control description:  Home
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Home
{
  TYPE             button
  SUBPANEL         HomeSubpanel
  IMAGE            home
  PUSH_ACTION      f.action "OpenHomeDir"
  HELP_TOPIC       FPHome
}

# Control description:  Toolboxes
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Toolboxes
{
  TYPE             button
  SUBPANEL         ToolboxesSubpanel
  IMAGE            tools
  DROP_ACTION      f.action CopyToPToolbox
  PUSH_ACTION      f.action "OpenPersonalToolbox"
  HELP_TOPIC       FPToolboxes
}

# Control description:  Trash
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
#   Find the ANIMATION block later in this file for the animation
#   sequence for this control.
#
CONTROL Trash
{
  TYPE             monitor_file
  SUBPANEL         TrashSubpanel
  IMAGE            trash
  ALTERNATE_IMAGE  trashfl
  MONITOR_FILE     $HOME/.vue/.trashinfo
  PUSH_ACTION      f.action OpenTrash
  DROP_ACTION      f.action TrashFile
  DROP_ANIMATION   TrashDrop
  HELP_TOPIC       FPTrash
}

#################################################################
#
#  Regular Session:  Bottom Row Controls
#
###

# Control description:  Logo
#
CONTROL Logo
{
  TYPE             button
  IMAGE            logo
  PUSH_ACTION      f.version 
  HELP_TOPIC       FPLogo
}

# Control description:  Lock
#
CONTROL Lock
{
  TYPE             button
  IMAGE            lock
  PUSH_ACTION      f.action LOCK_DISPLAY
  HELP_TOPIC       FPLock
}

# Control description:  Rename
#
CONTROL Rename
{
  TYPE             button
  IMAGE            wsrenam
  PUSH_ACTION      f.workspace_rename
  HELP_TOPIC       FPRename
}

# Control description:  Terminal
#
CONTROL Terminal
{
  TYPE             button
  IMAGE            term
  TITLE            "Terminal_Window"
  PUSH_ACTION      f.exec  "xterm  -ls -sb -sl 2000 -title @$HOST "
  HELP_TOPIC       FPTerminal
}

# Control description:  LocalXTerminal
#
#  TEMPORARY. MAY SUBSTITUTE THE PREVIOUS Terminal
#
CONTROL LocalXTerminal
{
  TYPE             button
  IMAGE            /vlt/System/X11/bitmaps/termX.l.bm
  TITLE            "Terminal_Window"
  PUSH_ACTION      f.exec  "xterm  -ls -sb -sl 2000 -title @$HOST "
  HELP_TOPIC       FPTerminal
}

# Control description:  LocalHPTerminal
#
#  TEMPORARY. MAY SUBSTITUTE THE PREVIOUS Terminal
#
CONTROL LocalHPTerminal
{
  TYPE             button
  IMAGE            /vlt/System/X11/bitmaps/termHP.l.bm
  TITLE            "Terminal_Window"
  PUSH_ACTION      f.action Hpterm
  HELP_TOPIC       FPTerminal
}

# Control description:  TextEdit
#
CONTROL TextEdit
{
  TYPE             button
  IMAGE            vuepad
  DROP_ACTION      f.action EditText
  PUSH_ACTION      f.action EditText
  HELP_TOPIC       FPTextEdit
}

# Control description:  Busy
#
CONTROL Busy
{
  TYPE             busy
  IMAGE            exit
  ALTERNATE_IMAGE  exit02
#  LABEL            "Exit"
  PUSH_ACTION      f.action EXIT_SESSION
  HELP_TOPIC       FPBusy
}

# Control description:  Laserrom (see laserrom file for more)
# 
# From E.ALLAERT: 
# see also INTERACT, April 1992, p. 102 and HP LaserROM/UX B.00.0 README file
# use "lrom -display hostx:0.0" to specify that HP LaserROM/UX is to use
# display 0.0 on hostx
#
CONTROL Laserrom
{
  TYPE             button
  IMAGE            /vlt/System/X11/bitmaps/lrm.l.bm
  PUSH_ACTION      f.exec "remsh te7 -n lrom -display $DISPLAY""
}

CONTROL HPman
{
  TYPE             action
  IMAGE            hlpwinY.l.bm
  PUSH_ACTION      f.action OpenManViewer
}

###########  End Front Panel Description: Regular Session #######

#################################################################
#
#  Start Front Panel Description: Lite Session
#
#  The HP VUE Lite front panel uses many of the controls defined above. 
#  Defined below are the additional controls used in HP VUE Lite.
#
#################################################################
PANEL LiteFrontPanel
{
    BOX           LiteTop
    BOX           LiteBottom
}

#################################################################
#
#  Lite Session:  Top Row
#
#  The top row is a primary row, containing subpanels and large icons.
#
###
BOX LiteTop
{
  TYPE             primary
  CONTROL          Clock
  CONTROL          Date
  CONTROL          Style
  CONTROL          Help
  SWITCH           Switch
  CONTROL          Mail
  CONTROL          Blank
  CONTROL          Tools
  CONTROL          Blank
  CONTROL          Terminals
  HELP_TOPIC       FPLiteTop
}

#################################################################
#
#  Lite Session:  Bottom Row
#
#  The bottom row is a secondary row.
#
###
BOX LiteBottom
{
  TYPE             secondary
  CONTROL          Logo
  CONTROL          LiteLock
  CONTROL          LiteRename
  CONTROL          TextEdit
  CONTROL          Busy
  HELP_TOPIC       FPLiteBottom
}

#################################################################
#
#  Lite Session:  Unique Top Row Controls
#
###

# Control description:  Tools
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Tools
{
  TYPE             button
  SUBPANEL         ToolsSubpanel
  IMAGE            tools
  PUSH_ACTION      f.action MainTool
  HELP_TOPIC       FPTools
}

# Control description:  Terminals
#
#   Please find the INCLUDE block at the beginning of this file 
#   for the subpanel for this control.
#
CONTROL Terminals
{
  TYPE             button
  SUBPANEL         TerminalSubpanel
  IMAGE            termina
  TITLE            "Terminal_Window"
  PUSH_ACTION      f.exec 
  HELP_TOPIC       FPTerminals
}

#################################################################
#
#  Lite Session:  Unique Bottom Row Controls
#
###

# Control description:  LiteLock
#
CONTROL LiteLock
{
  TYPE             button
  IMAGE            lock
  PUSH_ACTION      f.action LiteLock
  HELP_TOPIC       FPLiteLock
}

# Control description:  LiteRename
#
CONTROL LiteRename
{
  TYPE             button
  IMAGE            wsren
  PUSH_ACTION      f.workspace_rename
  HELP_TOPIC       FPLiteRename
}

###########     End Front Panel Description: Lite Session   #############

##############  End HP VUE Front Panel Descriptions   ###################

###
#
#  Animation Descriptions:
#
#  Each description consists of a list of picture files:
#
#  - The first parameter is the name of the image file.
#
#  - The second (optional) parameter is for duration of the exposure,
#    in milliseconds.  If none is specified, the previous duration
#    will apply.
#
###

ANIMATION TrashDrop
{
        trash02   200
        trash03   100
        trash04
        trash05   800
        trash06   200
        trash07
}

ANIMATION PrinterDrop
{
        ljet02     200
        ljet03     100
        ljet04
        ljet05
        ljet06
        ljet07
        ljet08
        ljet09     800
        ljet10     200
        ljet11
}
#################### End of Animation Descriptions  ################

###
#
# Root Window Menu Description 
#
###

#
# Root Menu  (BUTTON 1)
#
Menu VueRootMenu
{
    "Root Menu"         f.title
    no-label		f.separator
    "local Xterm"	f.exec  "xterm  -ls -sb -sl 2000 -title @$HOST "
    "local HPterm"	f.exec  "hpterm -ls -sb -title @$HOST "
    "local login"       f.exec  "xlogin"
    "remote Xterm"	f.menu   RemoteXterm
    "remote HPterm"	f.menu   RemoteHPterm
    no-label		f.separator
    no-label            f.separator
    "Lock the screen"   f.exec  "vuelock" 
    no-label		f.separator
    "Shuffle Up"	f.circle_up
    "Shuffle Down"	f.circle_down
    "Refresh"		f.refresh
    no-label            f.separator
    no-label            f.separator
    "Restart Vuewm..."  f.restart
}


Menu RemoteXterm
{
    " ... on wa1tcs"      f.exec  "remsh wa1tcs    -n xterm -n @wa1tcs    -display $DISPLAY -sb -ls -sl 2000 -title @wa1tcs   "
    " ... on wt1d95"      f.exec  "remsh wt1d95    -n xterm -n @wt1d95    -display $DISPLAY -sb -ls -sl 2000 -title @wt1d95   "
    " ... on wt1tcs"      f.exec  "remsh wt1tcs    -n xterm -n @wt1tcs    -display $DISPLAY -sb -ls -sl 2000 -title @wt1tcs   "
    " ... on wgsops"      f.exec  "remsh wgsops    -n xterm -n @wgsops    -display $DISPLAY -sb -ls -sl 2000 -title @wgsops   "
    " ... on wtatcam"      f.exec  "remsh wtatcam    -n xterm -n @wtatcam    -display $DISPLAY -sb -ls -sl 2000 -title @wtatcam   "
    " ... on wgsacc"      f.exec  "remsh wgsacc    -n xterm -n @wgsacc    -display $DISPLAY -sb -ls -sl 2000 -title @wgsacc   "
}

Menu RemoteHPterm
{
    " ... on wa1tcs"      f.exec  "remsh wa1tcs    -n hpterm -n @wa1tcs    -display $DISPLAY -sb -ls -sl 2000 -title @wa1tcs   "
    " ... on wt1d95"      f.exec  "remsh wt1d95    -n hpterm -n @wt1d95    -display $DISPLAY -sb -ls -sl 2000 -title @wt1d95   "
    " ... on wt1tcs"      f.exec  "remsh wt1tcs    -n hpterm -n @wt1tcs    -display $DISPLAY -sb -ls -sl 2000 -title @wt1tcs   "
    " ... on wgsops"      f.exec  "remsh wgsops    -n hpterm -n @wgsops    -display $DISPLAY -sb -ls -sl 2000 -title @wgsops   "
    " ... on wtatcam"      f.exec  "remsh wtatcam    -n hpterm -n @wtatcam    -display $DISPLAY -sb -ls -sl 2000 -title @wtatcam   "
    " ... on wgsacc"      f.exec  "remsh wgsacc    -n hpterm -n @wgsacc    -display $DISPLAY -sb -ls -sl 2000 -title @wgsacc   "
}

#
# Utilities menu description (BUTTON 2)
#

Menu UtilitiesMenu
{
    "Utilities Menu"              f.title
    "SoftBench"                   f.exec "/usr/softbench/bin/softbench"
    "Rtap Menu"                   f.menu  RTAPMenu
    "TSEE"                        f.exec  "desk "
    "FrameMaker"                  f.exec  "imaker "
    no-label	                  f.separator
    no-label                      f.separator
#    "edit editor"                 f.exec  "xedit &"
#    "Dvi-file Previewer"          f.exec  "xtex &"
#    "Emacs Editor"	           f.exec  "emacs -i &"
#    "CPU State"		   f.exec  "xcpustate &"
    "Desk Top Calculators"	  f.menu  CalculatorMenu 
    "DateBook (calendar)"         f.exec  "datebook"
#    "Calendar"		          f.exec  "xcalendar &"
#    "Calendar (next Month)"       f.exec  "xcalendar+ &"
    "Clock, Analog"	          f.exec  "xclock -analog  -update 1 &"
    "Clock, Digital"	          f.exec  "xclock -digital -update 1 &"
#    "Edit a Bitmap"	           f.exec  "bitmap $HOME/.bitmap &"
#    "Figure Editor"	           f.exec  "xfig &"
#    "Font Selector"	           f.exec  "xfontsel &"
    "Load Average Display"        f.menu  LoadDisplayMenu 
    "Mailbox Flag (on te1)"       f.exec  "remsh te1 -n xbiff -display $DISPLAY "
#    "Performance Meter"	   f.exec  "xperfmon -update 1 &"
#    "Picture Editor"	           f.exec  "xpic &"
#    "Show Colors"                 f.menu  ColorsMenu
}

Menu ColorsMenu
{
# not yet implemented on HP 
    "Main palette"        f.exec  "xcolors >&/dev/null &"
    "Others"              f.exec  "xcolors -start PaleGreen4 >&/dev/null &"
    "Grey scale"          f.exec  "xcolors -start grey63 >&/dev/null &"
}

Menu CalculatorMenu
{
    "HP Scient/Fin/Prog"  f.exec  "xhpcalc"
}

Menu LoadDisplayMenu
{
    "  ...local"          f.exec  "xload"
}

Menu RTAPMenu
{
    "Start RTAP"          f.exec  rtap 
    "Edit Attribute"      f.exec  attributeEdit 
    "Point Display "      f.exec  RtapPtDisplay 
    "Force Exit"          f.exec  "RtapShutdown -f"
}


# 
# Obsolete
# 
# Menu SoftBenchMenu
# {
#     ToolManager           f.action  SoftBench
#     SoftInit              f.action  SoftInit
#     SoftMail              f.action  SoftMail
#     SoftMsg               f.action  SoftMsg
# }

#
# Window Manager Setup menu (BUTTON 3)
#
Menu SetupMenu
{
    "Setup Menu"          f.title
    "VUE Style Manager"   f.exec  "vuestyle"
}


###
#
# Sample Window Menu Description--works fine for HP VUE LITE as well.
# This menu description exists as a sample only.
# The normal window manager menu is built in.
#
###

Menu SampleWindowMenu
{
    "Restore"               _R                   f.normalize
    "Move"                  _M                   f.move
    "Size"                  _S                   f.resize
    "Minimize"              _n                   f.minimize
    "Maximize"              _x                   f.maximize
    "Lower"                 _L                   f.lower
     no-label                                    f.separator
    "Occupy Workspace..."   _O                   f.workspace_presence
    "Occupy All Workspaces" _A                   f.occupy_all
    "Unoccupy Workspace"    _U                   f.remove
     no-label                                    f.separator
    "Close"                 _C   Alt<Key>F4      f.kill
}

###
#
# Alternate Window Menu Description without accelerators
#
###

Menu NoAcceleratorWindowMenu
{
    "Restore"               _R         f.normalize
    "Move"                  _M         f.move
    "Size"                  _S         f.resize
    "Minimize"              _n         f.minimize
    "Maximize"              _x         f.maximize
    "Lower"                 _L         f.lower
     no-label                          f.separator
    "Occupy Workspace..."   _O         f.workspace_presence
    "Occupy All Workspaces" _A         f.occupy_all
    "Unoccupy Workspace"    _U         f.remove
     no-label                          f.separator
    "Close"                 _C         f.kill
}

###
#
# Key Bindings Description
#
###

Keys VueKeyBindings
{

#    Meta<Key>Menu               root|icon|window        f.toggle_frontpanel
    Shift<Key>Escape            icon|window             f.post_wmenu
    Meta<Key>space              icon|window             f.post_wmenu
    Meta<Key>Tab                root|icon|window        f.next_key
    Meta Shift<Key>Tab		root|icon|window        f.prev_key
    Meta<Key>Escape             root|icon|window        f.next_key
    Meta Shift<Key>Escape       root|icon|window        f.prev_key
    Meta<Key>Down               root|icon|window        f.circle_down
    Meta<Key>Up                 root|icon|window        f.circle_up
    Meta Ctrl Shift<Key>exclam	root|icon|window        f.set_behavior
    Meta<Key>F6			window			f.next_key transient
}

###
#
# Mouse Button Bindings Description
#
###

Buttons VueButtonBindings
{
# activate menus when clicking on the root window 
    <Btn1Down>          root                    f.menu  VueRootMenu
    <Btn2Down>          root                    f.menu  UtilitiesMenu
    <Btn3Down>          root                    f.menu  SetupMenu
#
# raise/lower windows using B1/B3
    <Btn1Down>          frame|icon              f.raise
    <Btn2Down>          frame|icon              f.post_wmenu
    <Btn3Down>          frame|icon              f.lower
#
    Meta<Btn1Down>	icon|window             f.move
    Meta<Btn3Down>	window                  f.minimize
}

###
#
# Defaults:   Window menus, key bindings, and mouse button bindings
#
###

Menu DefaultWindowMenu
{
    "Restore"	_R	Alt<Key>F5	f.normalize
    "Move"	_M	Alt<Key>F7	f.move
    "Size"	_S	Alt<Key>F8	f.resize
    "Minimize"	_n	Alt<Key>F9	f.minimize
    "Maximize"	_x	Alt<Key>F10	f.maximize
    "Lower"	_L	Alt<Key>F3	f.lower
    no-label				f.separator
    "Close"	_C	Alt<Key>F4	f.kill
}

Keys DefaultKeyBindings
{
    Shift<Key>Escape            icon|window             f.post_wmenu
    Meta<Key>space              icon|window             f.post_wmenu
    Meta<Key>Tab                root|icon|window        f.next_key
    Meta Shift<Key>Tab		root|icon|window        f.prev_key
    Meta<Key>Escape             root|icon|window        f.next_key
    Meta Shift<Key>Escape       root|icon|window        f.prev_key
    Meta Ctrl Shift<Key>exclam	root|icon|window        f.set_behavior
    Meta<Key>F6			window			f.next_key transient
}

Buttons DefaultButtonBindings
{
#
# raise/lower windows using B1/B3
    <Btn1Down>          frame|icon|window       f.raise
    <Btn2Down>          frame|icon              f.post_wmenu
    <Btn3Down>          frame|icon              f.lower
}

#################  End of the vuewmrc file   #####################
