!
!                            COPYRIGHT
!
!  PCB, interactive printed circuit board design
!  Copyright (C) 1994,1995,1996, 1997 Thomas Nau
!  Copyright (C) 1998, 1999, 2000, 2001, 2002 harry eaton
!
!  This program is free software; you can redistribute it and/or modify
!  it under the terms of the GNU General Public License as published by
!  the Free Software Foundation; either version 2 of the License, or
!  (at your option) any later version.
!
!  This program is distributed in the hope that it will be useful,
!  but WITHOUT ANY WARRANTY; without even the implied warranty of
!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
!  GNU General Public License for more details.
!
!  You should have received a copy of the GNU General Public License
!  along with this program; if not, write to the Free Software
!  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
!
!  RCS: $Id: Pcb.ad.in,v 1.26 2006/08/02 15:55:17 djdelorie Exp $
!

!---------------------------------------------------------------------------
! resources as defined by pcb
!
Pcb.alignmentDistance:      20000
Pcb.allDirectionLines:      Off
Pcb.backupInterval:         60
Pcb.charactersPerLine:      78
Pcb.connectedColor:         green
Pcb.crosshairColor:         red
Pcb.crossColor:             yellow
Pcb.elementColor:           black
Pcb.elementSelectedColor:   cyan
Pcb.elementCommand:         M4PATH='%p';export M4PATH;echo 'include(%f)' | /usr/local/bin/gm4
Pcb.elementPath:            .:/usr/local/share/pcb/newlib:packages:circuits:/usr/local/share/pcb:/usr/local/share/pcb/circuits:/usr/local/share/pcb/packages
Pcb.fileCommand:            cat '%f'
Pcb.filePath:               .
Pcb.fontCommand:            M4PATH='%p';export M4PATH;echo 'include(%f)' | /usr/local/bin/gm4
Pcb.fontFile:               default_font
Pcb.fontPath:               .:/usr/local/share/pcb
Pcb.grid:                   2000
Pcb.gridColor:		    red
Pcb.warnColor:              hot pink
Pcb.maskColor:              red
Pcb.invertedFrameWidth:     500
Pcb.invisibleObjectsColor:  gray80
Pcb.invisibleMarkColor:     gray70
Pcb.layerColor1:            brown4
Pcb.layerColor2:            RoyalBlue3
Pcb.layerColor3:            DodgerBlue4
Pcb.layerColor4:            OrangeRed3
Pcb.layerColor5:            PaleGreen4
Pcb.layerColor6:            burlywood4
Pcb.layerColor7:            turquoise4
Pcb.layerColor8:            forest green
Pcb.layerGroups:            1,c:2,s:3:4:5:6:7:8
Pcb.layerName1:             component
Pcb.layerName2:             solder
Pcb.layerName3:             GND
Pcb.layerName4:             power
Pcb.layerName5:             signal1
Pcb.layerName6:             signal2
Pcb.layerName7:             unused
Pcb.layerName8:             unused
Pcb.layerSelectedColor1:    cyan
Pcb.layerSelectedColor2:    cyan
Pcb.layerSelectedColor3:    cyan
Pcb.layerSelectedColor4:    cyan
Pcb.layerSelectedColor5:    cyan
Pcb.layerSelectedColor6:    cyan
Pcb.layerSelectedColor7:    cyan
Pcb.layerSelectedColor8:    cyan
Pcb.libraryCommand:         /usr/local/share/pcb/QueryLibrary.sh '%p' '%f' %a
Pcb.libraryContentsCommand: /usr/local/share/pcb/ListLibraryContents.sh '%p' '%f'
Pcb.libraryFilename:        pcblib
Pcb.libraryPath:            .:/usr/local/share/pcb
Pcb.libraryTree:            /usr/local/share/pcb/newlib
Pcb.lineThickness:          1000
Pcb.media:                  letter
Pcb.menuFile:		    /usr/local/share/pcb/pcb-menu.res
Pcb.offLimitColor:          gray80
Pcb.pinColor:               gray30
Pcb.pinSelectedColor:       cyan
Pcb.pinoutFont0:            -*-courier-bold-r-*-*-24-*-*-*-*-*-*-*
Pcb.pinoutFont1:            -*-courier-bold-r-*-*-12-*-*-*-*-*-*-*
Pcb.pinoutFont2:            -*-courier-bold-r-*-*-8-*-*-*-*-*-*-*
Pcb.pinoutFont3:            -*-courier-bold-r-*-*-4-*-*-*-*-*-*-*
Pcb.pinoutFont4:            -*-courier-bold-r-*-*-2-*-*-*-*-*-*-*
Pcb.pinoutNameLength:       8
Pcb.pinoutOffsetX:          100
Pcb.pinoutOffsetY:          100
Pcb.pinoutTextOffsetX:      8
Pcb.pinoutTextOffsetY:      8
Pcb.pinoutZoom:             2
Pcb.printFile:             %f.output
Pcb.raiseLogWindow:         On
Pcb.ratColor:               DarkGoldenrod
Pcb.ratSelectedColor:       cyan
Pcb.ratThickness:           1000
Pcb.resetAfterElement:      On
Pcb.ringBellWhenFinished:   Off
Pcb.routeStyles:	    Signal,1000,3600,2000,1000:Power,2500,6000,3500,1000:Fat,4000,6000,3500,1000:Skinny,600,2402,1181,600
Pcb.saveCommand:            cat - > '%f'
Pcb.saveInTMP:              Off
Pcb.saveLastCommand:        Off
Pcb.size:                   6000x5000
Pcb.stipplePolygons:        Off
Pcb.textScale:              100
Pcb.useLogWindow:           On
Pcb.uniqueNames:            On
Pcb.snapPin:                On
Pcb.clearLines:	            On
Pcb.viaColor:               gray50
Pcb.viaSelectedColor:       cyan
Pcb.viaThickness:           6000
Pcb.viaDrillingHole:        2800
Pcb.volume:                 100
Pcb.zoom:                   3
Pcb.Bloat:		    699
Pcb.minWid:		    800
Pcb.Shrink:		    400
Pcb.minSlk:		    800
Pcb.minDrill:		    1500
Pcb.minRing:		    800

!---------------------------------------------------------------------------
! resources that are common to all 'subwindows'
!
Pcb*beNiceToColormap:			false
Pcb*background:			gray90
Pcb.masterForm*background:	gray90
Pcb*Command.highlightThickness:        1
Pcb*defaultButton.borderWidth:         2
Pcb*defaultButton.highlightThickness:  2
!pcb*font:                              -*-courier-bold-r-*-*-14-*-*-*-*-*-*-*
Pcb*Label.borderWidth:                 0
Pcb*Label.justify:                     center
Pcb*MenuButton.resizable:              off
Pcb*Toggle.borderWidth:                1
Pcb*selector*List.verticalList:        On
Pcb*selector.height:                   240
Pcb*selector.width:                    180
Pcb*horizDistance:                     2
Pcb*defaultButton.accelerators:  #override \
  <Key>Return:            set() notify() unset() \n
Pcb*cancelButton.accelerators:  #override \
  <Key>Escape:            set() notify() unset() \n

*Scrollbar.translations: #override \
<BtnDown>:      StartScroll(Continuous) MoveThumb() NotifyThumb()\n\
<BtnMotion>:    MoveThumb() NotifyThumb()\n\
<BtnUp>:        NotifyScroll(Proportional) EndScroll()\n\
<Key>Up:        StartScroll(Backward) \
                NotifyScroll(FullLength) \
                EndScroll() \n\
<Key>Down:      StartScroll(Forward) \
                NotifyScroll(FullLength) \
                EndScroll() \n\
<Key>Left:      StartScroll(Backward) \
                NotifyScroll(FullLength) \
                EndScroll() \n\
<Key>Right:     StartScroll(Forward) \
                NotifyScroll(FullLength) \
                EndScroll() \n

!---------------------------------------------------------------------------
! toplevel shell resources
!
Pcb*baseTranslations: #override \
  !Mod1<Key>q:	Quit() \n\
  <Message>WM_PROTOCOLS:   Quit() \n

!---------------------------------------------------------------------------
! resources used by control panel
! on/off are Toggles, active layer is MenuButton
! Note the panner must have a 4:3 aspect ratio to work properly
!
Pcb*controlMasterForm*font:             -*-courier-bold-r-*-*-12-*-*-*-*-*-*-*
Pcb*controlMasterForm*SimpleMenu.resizeable: True
Pcb*controlMasterForm*shadowWidth:	0
Pcb*controlMasterForm*borderWidth:      0
Pcb*controlMasterForm*SimpleMenu.borderWidth: 1
Pcb*controlMasterForm*horizDistance:	1
Pcb*controlMasterForm*MenuButton.width: 72
Pcb*controlMasterForm*Toggle.width: 72
Pcb*controlMasterForm*Label.height:    12
Pcb*controlMasterForm*Label.width:   72 
Pcb*controlMasterForm*MenuButton.background:	white
Pcb*controlMasterForm*MenuButton.height:      14
Pcb*controlMasterForm*MenuButton.borderWidth: 1  
Pcb*controlMasterForm*Toggle.background:	white
Pcb*controlMasterForm*Toggle.height:          14
Pcb*controlMasterForm*Toggle.borderWidth:     1
Pcb*controlMasterForm*panner.width: 72
Pcb*controlMasterForm*panner.height: 54
Pcb*controlMasterForm*panner.rubberBand: False
Pcb*controlMasterForm*panner.borderWidth: 2
Pcb*controlMasterForm*panner.shadowWidth: 2
Pcb*controlMasterForm*panner.baseTranslations:   #override \
  <Key>Up:      Display(Scroll, 8) \n\
  <Key>Down:    Display(Scroll, 2) \n\
  <Key>Right:   Display(Scroll, 6) \n\
  <Key>Left:    Display(Scroll, 4) \n

!---------------------------------------------------------------------------
! resources used by the tool-selection area
!
Pcb.masterForm.Toggle.foreground:	black
!pcb.masterForm.Toggle.internalHeight:   1 
!pcb.masterForm.Toggle.internalWidth:	1
Pcb*MasterForm.Toggle.horizDistance:       3 
Pcb*MasterForm.Toggle.vertDistance:        3

!---------------------------------------------------------------------------
! resources used by the file select box
!
Pcb*fileselectMasterForm*current.vertDistance: 20
Pcb*fileselectMasterForm*input.width:          366
Pcb*fileselectMasterForm*input*background:     gray90

Pcb*fileselectMasterForm.defaultButton.accelerators:  #override \
  <Key>Return:   set() notify() unset() \n\
  <Btn1Up>(2):   set() notify() unset() \n

!---------------------------------------------------------------------------
! resources used by the size select box
!
Pcb*sizeMasterForm*Label.vertDistance:    10

!---------------------------------------------------------------------------
! resources of the library window
!
Pcb*library.iconic:		true
Pcb.library.geometry:         750x250
Pcb.library*type*foreground:  red
Pcb.library.baseTranslations: #override \
  <Message>WM_PROTOCOLS:  Bell() \n

Pcb*libraryMasterForm*List.baseTranslations: #replace \
  <Btn1Down>,<Btn1Up>:    Set() Notify() \n\

!---------------------------------------------------------------------------
! resources of the netlist window
!
Pcb*netlist.iconic:	false
Pcb.netlist.geometry:         400x200
Pcb.netlist*net*foreground:	red
Pcb.netlist.baseTranslations: #override \
  <Message>WM_PROTOCOLS:  Bell() \n

Pcb*netlistMasterForm*List.baseTranslations: #replace \
  <Btn1Down>,<Btn1Up>:    Set() Notify() \n\
  <Btn1Up>(2):            ListAct() Set() \n\
  <Key>BackSpace:   ListAct(Kill) \n\
  <Key>u:		Undo() \n\
  Shift<Key>z:          SetValue(Zoom, +1)\n\
  <Key>z:           SetValue(Zoom, -1)\n


!---------------------------------------------------------------------------
! resources of the logging window
!
Pcb*log.iconic:           true
Pcb.log.geometry:         600x200
Pcb.log.baseTranslations: #override \
  <Message>WM_PROTOCOLS:   Bell() \n

!---------------------------------------------------------------------------
! resources of the print selection window
!
Pcb*printMasterForm*Command.width:        100
Pcb*printMasterForm*comment.vertDistance: 20
Pcb*printMasterForm*input.width:          150
Pcb*printMasterForm*Panner.background:    gray90
Pcb*printMasterForm*Toggle.width:         150

!---------------------------------------------------------------------------
! resources of the layer-group edit window
!
Pcb*layerGroupMasterForm*comment.width:             150
Pcb*layerGroupMasterForm*comment.justify:           left
Pcb*layerGroupMasterForm*groupNumber.horizDistance: 6
Pcb*layerGroupMasterForm*groupNumber.width:         20
Pcb*layerGroupMasterForm*layerGroup.width:          150
Pcb*layerGroupMasterForm*layerName.justify:         left
Pcb*layerGroupMasterForm*layerName.width:           150
Pcb*layerGroupMasterForm*Toggle.width:              20

!---------------------------------------------------------------------------
! resources of the pinout window
!
Pcb*pinoutMasterForm*viewport.height:  240
Pcb*pinoutMasterForm*viewport.width:   320

Pcb*pinoutMasterForm.dismiss.accelerators: #override \
  <Message>WM_PROTOCOLS:  set() notify() unset() \n

Pcb*pinoutMasterForm.viewport.horizontal.accelerators: #override \
  !Mod1 Ctrl<Key>Left:    StartScroll(Backward) \
                            NotifyScroll(FullLength) \
                            EndScroll() \n\
  !Mod1 Ctrl<Key>Right:   StartScroll(Forward) \
                            NotifyScroll(FullLength) \
                            EndScroll() \n

Pcb*pinoutMasterForm.viewport.vertical.accelerators: #override \
  !Mod1 Ctrl<Key>Up:      StartScroll(Backward) \
                            NotifyScroll(FullLength) \
                            EndScroll() \n\
  !Mod1 Ctrl<Key>Down:    StartScroll(Forward) \
                            NotifyScroll(FullLength) \
                            EndScroll() \n

!---------------------------------------------------------------------------
! resources used by the menu buttons
! Note that these overrides plus those of the menus below make the menus
! behave as "sticky" menus.
! The next two lines eliminate the menu button borders
! but there is no convenient way to underline the first characters.
Pcb.masterForm*MenuButton.shadowWidth:	0
Pcb.masterForm*MenuButton.BorderWidth: 0
Pcb*MenuButton.baseTranslations: #override \
   <BtnDown>: set() \n\
   <BtnUp>: reset() PopupMenu() \n
!---------------------------------------------------------------------------
! resources used by the menus
!
Pcb*header.foreground:    red
Pcb*SimpleMenu*justify:   left
Pcb*SimpleMenu.baseTranslations: #override \
   <Motion>: highlight() \n\
   <BtnDown>,<BtnUp>:	MenuPopdown() notify() unhighlight() \n\
   <BtnUp>: \n

!---------------------------------------------------------------------------
! resources used by statuslines and input field
!
Pcb.masterForm*cursorPosition.justify:   left
Pcb.masterForm*cursorPosition.width:     400
Pcb.masterForm*inputField*borderWidth:   0
Pcb.masterForm*messageText.foreground:   red
Pcb.masterForm*messageText.justify:      left
Pcb.masterForm*statusLine.justify:       left

!---------------------------------------------------------------------------
! resources used by the output area
Pcb.masterForm*output*background:        gray95

!---------------------------------------------------------------------------
! translations of the output area
!
Pcb.masterForm*output.baseTranslations:   #override \
  <Key>Escape:          Mode(None) \n\
  <Key>space:           Mode(Arrow) \n\
  <Key>colon:           Command() \n\
  <Key>period:          Command(-1) \n\
  Shift<Key>BackSpace: Atomic(Save) \
			Connection(Reset) \
			Atomic(Restore) \
                        Unselect(All) \
			Atomic(Restore) \
                        Connection(Find) \
			Atomic(Restore) \
                        Select(Connection) \
			Atomic(Restore) \
                        RemoveSelected() \
			Atomic(Restore) \
			Connection(Reset) \
			Atomic(Restore) \
			Unselect(All) \
			Atomic(Block) \n\
  Shift<Key>Delete:	Atomic(Save) \
			Connection(Reset) \
			Atomic(Restore) \
                        Unselect(All) \
			Atomic(Restore) \
                        Connection(Find) \
			Atomic(Restore) \
                        Select(Connection) \
			Atomic(Restore) \
                        RemoveSelected() \
			Atomic(Restore) \
			Connection(Reset) \
			Atomic(Restore) \
			Unselect(All) \
			Atomic(Block) \n\
  <Key>BackSpace:   Mode(Save) \
                        Mode(Remove) \
                        Mode(Notify) \
                        Mode(Restore) \n\
  <Key>Delete:	Mode(Save) \
			Mode(Remove) \
			Mode(Notify) \
			Mode(Restore) \n\
  <Key>Insert:      Mode(InsertPoint) \n\
  \
  <Key>1: SwitchDrawingLayer(1) \n\
  <Key>2: SwitchDrawingLayer(2) \n\
  <Key>3: SwitchDrawingLayer(3) \n\
  <Key>4: SwitchDrawingLayer(4) \n\
  <Key>5: SwitchDrawingLayer(5) \n\
  <Key>6: SwitchDrawingLayer(6) \n\
  <Key>7: SwitchDrawingLayer(7) \n\
  <Key>8: SwitchDrawingLayer(8) \n\
  <Key>9: SwitchDrawingLayer(9) \n\
  \
  <Key>a:		SetSame() \n\
  <Key>b:		Flip(Object) \n\
  Mod1<Key>c:       PasteBuffer(Clear) \
                       PasteBuffer(AddSelected) \
                       Unselect(All) \n\
  <Key>d:          Display(PinOrPadName) \n\
  Shift<Key>e:        DeleteRats(SelectedRats) \n\
  <Key>f:          Connection(Reset) \
		   Connection(Find) \n\
  Shift Ctrl<Key>g:        SetValue(Grid, -0.05, mm) \n\
  Ctrl<Key>g:          SetValue(Grid, +0.05, mm) \n\
  Shift<Key>h:        ToggleHideName(SelectedElements) \n\
  Ctrl<Key>h:         ChangeHole(ToggleObject) \n\
  <Key>h:          ToggleHideName(Object) \n\
  <Key>j:		ChangeJoin(Object) \n\
  Shift<Key>j:		ChangeJoin(SelectedObjects) \n\
  Shift Ctrl<Key>k:	ChangeClearSize(SelectedObjects, -2, mil) \n\
  Shift<Key>k:		ChangeClearSize(Object, -2, mil) \n\
  Ctrl<Key>k:		ChangeClearSize(SelectedObjects, +2, mil) \n\
  <Key>k:		ChangeClearSize(Object, +2, mil) \n\
  Shift<Key>l:        SetValue(LineSize, -5, mil) \n\
  <Key>l:          SetValue(LineSize, +5, mil) \n\
  Shift<Key>m:        MoveToCurrentLayer(SelectedObjects) \n\
  Ctrl<Key>m:         MarkCrosshair() \n\
  <Key>m:          MoveToCurrentLayer(Object) \n\
  Shift<Key>n:     AddRats(Close) \n\
  Shift<Key>o:        Atomic(Save) \
		       DeleteRats(AllRats) \
		       Atomic(Restore) \
                       AddRats(SelectedRats) \
		       Atomic(Block) \n\
  Ctrl<Key>o:         ChangeOctagon(Object) \n\
  Shift<Key>p:        Polygon(Close) \n\
  <Key>p:          Polygon(PreviousPoint) \n\
  <Key>q:          ChangeSquare(ToggleObject) \n\
  Mod1 Shift<Key>s: ChangeDrillSize(Object, -5, mil) \n\
  Shift<Key>s:        ChangeSize(Object, -5, mil) \n\
  Mod1<Key>s:       ChangeDrillSize(Object, +5, mil) \n\
  <Key>s:          ChangeSize(Object, +5, mil) \n\
  Shift<Key>t:          SetValue(TextScale, -10, mil) \n\
  <Key>t:               SetValue(TextScale, +10, mil) \n\
  Mod1 Shift<Key>v: SetValue(ViaDrillingHole, -5, mil) \n\
  Shift Ctrl<Key>v:        SetValue(ViaSize, -5, mil) \n\
  Mod1<Key>v:       SetValue(ViaDrillingHole, +5, mil) \n\
  Ctrl<Key>v:	      SetValue(ViaSize, +5, mil) \n\
  <Key>v:          SetValue(Zoom, 1000) \n\
  Shift<Key>w:        AddRats(SelectedRats) \n\
  <Key>w:          AddRats(AllRats) \n\
  Mod1<Key>x:       PasteBuffer(Clear) \
                       PasteBuffer(AddSelected) \
                       RemoveSelected() \n\
  Shift<Key>z:        SetValue(Zoom, +1) \n\
  Mod1<Key>z:       Undo() \n\
  <Key>z:          SetValue(Zoom, -1) \
                   Display(Center) \n\
  <Key>.:          Display(Toggle45Degree) \n\
  <Key>/:          Display(CycleClip) \n\
  \
  Mod1<Key>Up:      Display(Scroll, 8) \
                    Display(Scroll, 0) \n\
  Mod1<Key>Down:    Display(Scroll, 2) \
                    Display(Scroll, 0) \n\
  Mod1<Key>Right:   Display(Scroll, 6) \
		    Display(Scroll, 0) \n\
  Mod1<Key>Left:    Display(Scroll, 4) \
		    Display(Scroll, 0) \n\
  \
  Ctrl<Key>Up:      Display(Scroll, 8) \
  		    Display(Scroll, 0) \n\
  Shift<Key>Up:    MovePointer(0, -10) \n\
  <Key>Up:      MovePointer(0, -1) \n\
  Ctrl<Key>Down:    Display(Scroll, 2) \
  			Display(Scroll, 0) \n\
  Shift<Key>Down:  MovePointer(0, 10) \n\
  <Key>Down:    MovePointer(0, 1) \n\
  Ctrl<Key>Right:   Display(Scroll, 6) \
  			Display(Scroll, 0) \n\
  Shift<Key>Right: MovePointer(10, 0) \n\
  <Key>Right:   MovePointer(1, 0) \n\
  Ctrl<Key>Left:    Display(Scroll, 4) \
  			Display(Scroll, 0) \n\
  Shift<Key>Left:  MovePointer(-10, 0) \n\
  <Key>Left:    MovePointer(-1, 0) \n\
  \
  <Key>F1:   Mode(Via) \n\
  <Key>F2:   Mode(Line) \n\
  <Key>F3:   Mode(Arc) \n\
  <Key>F4:   Mode(Text) \n\
  <Key>F5:   Mode(Rectangle) \n\
  <Key>F6:   Mode(Polygon) \n\
  Shift<Key>F7: PasteBuffer(Rotate, 1) \n\
  <Key>F8:   Mode(Delete) \n\
  <Key>F9:	Mode(Rotate) \n\
  <Key>F10:   Mode(Thermal) \n\
  <Key>F11:  Mode(Arrow) \n\
  \
  <Key>[:	Mode(Save) \
		Mode(Arrow) \
		Mode(Notify) \n\
  <Key>]:	Mode(Release) \
		Mode(Restore) \n\
  \
  Shift Ctrl<Btn1Down>: Mode(Save) \
                         Mode(Remove) \
                         Mode(Notify) \
                         Mode(Restore) \n\
  Ctrl<Btn1Down>:       Mode(Save) \
			 Mode(None) \
		         Mode(Restore) \
		         Mode(Notify) \n\
  <Btn1Down>:        Mode(Notify) \n\
  <Btn1Up>:		 Mode(Release) \n\
  \
  Shift Mod1<Btn2Down>: Display(ToggleRubberbandMode) \
			   Mode(Save) \
                           Mode(Move) \
                           Mode(Notify) \n\
  Ctrl<Btn2Down>:       Mode(Save) \
                           Mode(Copy) \
                           Mode(Notify) \n\
  <Btn2Down>:		   Mode(Save) \
		           Mode(Stroke) \n\
  Shift Mod1<Btn2Up>:   Mode(Notify) \
                           Mode(Restore) \
			   Display(ToggleRubberbandMode) \n\
  Ctrl<Btn2Up>:            Mode(Notify) \
                           Mode(Restore) \n\
  <Btn2Up>:		Mode(Release) \
			Mode(Restore) \n\
  \
  Shift<Btn3Down>:	Display(Save) \
			SetValue(Zoom, 1000) \n\
  Shift<Btn3Up>:	Display(Center) \
			Display(Restore) \n\
  <Btn3Down>:	ButtonThree()  \n

!-------------------------------------------------------------------- 
! The "None" is necessary for the MenuPopup,
! otherwise the menu won't get a grab 
!
!  None<Btn3Down>:          XawPositionSimpleMenu(pmenu) \
!			   XtMenuPopup(pmenu) \n\
!  Shift <Btn3Down>:	   Mode(Save) \
!                           Mode(None) \
!                           Unselect(Block) \n\
!  Shift<Btn3Up>:	   Unselect(Block) \
!                           Mode(Restore) \n\
!  Mod1<Btn3Down>:	Mode(Save) \
!			Mode(None) \
!			Select(Block) \n\
!  Mod1<Btn3Up>:	Select(Block) \
!			Mode(Restore) \n
