;------------------------------------------------------------------------------
;
; $VER: SAS_C.dfn 1.01 (01.04.96)
;
; Definition file supporting SAS C
;
; By Marco Negri
;
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
;
;  Synopsis:
;
;   MENU <label>
;     ITEM <label> <shortcut> <command> <arguments>
;     ITEM ...
;     ITEM ...
;     BAR
;     ITEM ...
;       SUB <label> <shortcut> <command> <arguments>
;       SUB ...
;
;   MENU ...
;
;   etc.
;
;------------------------------------------------------------------------------

MENUS:

  MENU  "File"
    ITEM  "New Doc"            "W" OpenDoc
    ITEM  "Clear File"         ""  ClearFile
    BAR
    ITEM  "Open File..."       "O" OpenFile
    ITEM  "Open New Doc..."    "D" OpenDoc FILEREQ
    ITEM  "Insert File..."     ""  InsertFile
    BAR
    ITEM  "Save File"          "S" SaveFile
    ITEM  "Save File As..."    "A" SaveFileAs
    ITEM  "Save & Close"       ""  ExecARexxString "SaveFile MODIFIED QUIET; CloseDoc;"
    BAR
    ITEM  "Print File..."      ""  PrintFile
    BAR
    ITEM  "Close Doc"          "Q" CloseDoc
    ITEM  "Quit"               ""  Quit

  MENU "Window"
    ITEM  "Select..."          ""  ExecARexxMacro WINDOW=CON:////Select.../SCREEN* BED:Rexx/SelectDoc.bed
    BAR
    ITEM  "Minimize"           ""  SizeWindow 0 0
    ITEM  "Maximize"           ""  SizeWindow 10000 10000
    ITEM  "Normalize"          ""  SetWindowSpec
    BAR
    ITEM  "Snapshot"           ""  ExecARexxString "OPTIONS RESULTS; GetWindowSpec; SetPrefs DefaultWindow RESULT;"
    BAR
    ITEM  "Iconify"            ""  IconifyWindow TOGGLE
    ITEM  "Iconify All"        ""  ExecARexxMacro BED:Rexx/OrganizeWindows.bed ICONIFY
    ITEM  "Tile"               ""  ExecARexxMacro BED:Rexx/OrganizeWindows.bed TILE
    ITEM  "Stack"              ""  ExecARexxMacro BED:Rexx/OrganizeWindows.bed STACK
    ITEM  "Cascade"            ""  ExecARexxMacro BED:Rexx/OrganizeWindows.bed CASCADE
    BAR
    ITEM  "Open Desktop..."    ""  ExecARexxMacro BED:Rexx/LoadDesktop.bed
    ITEM  "Save Desktop As..." ""  ExecARexxMacro BED:Rexx/SaveDesktop.bed

  MENU  "Edit"
    ITEM  "Mark Block"         "B" MarkBlk
    BAR
    ITEM  "Select Word"        ""  MarkBlk WORD
    ITEM  "Select Line"        "E" SelectLine
    ITEM  "Select All"         "T" ExecARexxString "MoveSOF; MarkBlk; MoveEOF;"
    BAR
    ITEM  "Cut"                "X" CutBlk
    ITEM  "Copy"               "C" CopyBlk
    ITEM  "Paste"              "V" PasteClip
    ITEM  "Erase"              ""  DeleteBlk QUIET
    BAR
    ITEM  "Cut Append"         ""  CutBlk APPEND
    ITEM  "Copy Append"        "Z" CopyBlk APPEND
    BAR
    ITEM  "Open Clip..."       ""  OpenClip
    ITEM  "Save Clip As..."    ""  SaveClip
    ITEM  "Print Clip..."      ""  PrintClip

  MENU  "Find"
    ITEM  "Find..."            "F" OpenRequester FIND
    ITEM  "Find Next"          "N" Find
    ITEM  "Find & Replace..."  "R" OpenRequester FINDCHANGE
    ITEM  "Replace Next"       "Y" FindChange
    BAR
    ITEM  "Goto Line..."       "L" Move
    ITEM  "Match Bracket"      ""  MoveMatchBkt
    BAR
    ITEM  "Set Bookmark"       ""  Nop
      SUB "# 1"                  ""  SetBookmark 1
      SUB "# 2"                  ""  SetBookmark 2
      SUB "# 3"                  ""  SetBookmark 3
      SUB "# 4"                  ""  SetBookmark 4
      SUB "# 5"                  ""  SetBookmark 5
      SUB "# 6"                  ""  SetBookmark 6
      SUB "# 7"                  ""  SetBookmark 7
      SUB "# 8"                  ""  SetBookmark 8
      SUB "# 9"                  ""  SetBookmark 9
      SUB "# 10"                 ""  SetBookmark 10
    ITEM  "Goto Bookmark"      ""  Nop
      SUB "# 1"                  ""  MoveBookmark 1
      SUB "# 2"                  ""  MoveBookmark 2
      SUB "# 3"                  ""  MoveBookmark 3
      SUB "# 4"                  ""  MoveBookmark 4
      SUB "# 5"                  ""  MoveBookmark 5
      SUB "# 6"                  ""  MoveBookmark 6
      SUB "# 7"                  ""  MoveBookmark 7
      SUB "# 8"                  ""  MoveBookmark 8
      SUB "# 9"                  ""  MoveBookmark 9
      SUB "# 10"                 ""  MoveBookmark 10

  MENU "Format"
    ITEM  "Format Paragraph"   ""  FormatParagraph
    ITEM  "Goto Paragraph"     ""  Nop
      SUB  "Previous"          ""  ExecARexxMacro BED:Rexx/PrevParagraph
      SUB  "Next"              ""  ExecARexxMacro BED:Rexx/NextParagraph
    ITEM  "Documentize"        ""  ExecARexxMacro BED:Rexx/Documentize.bed
    BAR
    ITEM  "Left Justify"       ""  LeftJustify
    ITEM  "Right Justify"      ""  RightJustify
    ITEM  "L/R Justify"        ""  Justify
    ITEM  "Center"             ""  Center
    BAR
    ITEM  "Tabs -> Spaces"     ""  Conv2Spaces
    ITEM  "Spaces -> Tabs"     ""  Conv2Tabs
    ITEM  "Remove EOL Blanks"  ""  StripEOLBlanks
    BAR
    ITEM  "Indent Block"       ""  ExecARexxMacro BED:Rexx/IndentBlk.bed
    ITEM  "Unindent Block"     ""  ExecARexxMacro BED:Rexx/UnindentBlk.bed
    BAR
    ITEM  "Indent Line"        ""  ShiftRight TABS
    ITEM  "Unindent Line"      ""  ShiftLeft TABS

  MENU  "Extras"
    ITEM  "Undo Line"          "U" UndoLine
    ITEM  "Undelete Line"      ""  UndeleteLine
    BAR
    ITEM  "Insert Current Date"   ""  ExecARexxString "Insert DATE();"
    ITEM  "Insert Current Time"   ""  ExecARexxString "Insert TIME();"
    ITEM  "Insert ASCII Char"     ""  SetChar
    ITEM  "Insert Version String" ""  ExecARexxMacro BED:Rexx/InsertVersion.bed
    BAR
    ITEM  "Comment Block"      ""  ExecARexxMacro BED:Rexx/CommentBlk.bed
    ITEM  "Number Lines"       ""  ExecARexxMacro BED:Rexx/NumberLines.bed
    BAR
    ITEM  "Word -> Lower Case" ""  Conv2Lower
    ITEM  "Word -> Upper Case" ""  Conv2Upper
    ITEM  "Toggle Char Case"   ""  ToggleCharCase
    BAR
    ITEM  "Encrypt Block"      ""  EncryptBlk

  MENU  "Macro"
    ITEM  "Start Recording"    "G" RecordMacro
    ITEM  "Stop Recording"     "H" EndMacro
    BAR
    ITEM  "Play Macro"         "M" PlayMacro 1
    ITEM  "Play Many..."       "I" PlayMacro
    BAR
    ITEM  "Open Macro..."      ""  OpenMacro
    ITEM  "Save Macro as..."   ""  SaveMacro

  MENU  "Tools"
    ITEM  "New Shell..."       ""  NewShell
    ITEM  "New Console..."     ""  ExecARexxMacro CONSOLE BED:Rexx/CmdShell.bed
    BAR
    ITEM  "Exec Tool..."       ""  ExecTool
    ITEM  "Run Tool..."        ""  RunTool
    ITEM  "Exec DOS Script..." ""  ExecDOSScript CONSOLE
    BAR
    ITEM  "Calculator"         ""  RunTool Calculator PUBSCREEN=Blacks_Editor
    ITEM  "Multiview"          ""  RunTool Multiview
    BAR
    ITEM  "..."                ""  RunTool

  MENU "ARexx"
    ITEM  "Exec ARexx Macro..."  ""  ExecARexxMacro
    ITEM  "Exec ARexx String..." "K" ExecARexxString
    BAR
    ITEM  "AddChars"             ""  ExecARexxMacro BED:Rexx/AddChars.bed
    ITEM  "CountWords"           ""  ExecARexxMacro BED:Rexx/CountWords.bed
    ITEM  "ExecBlk"              ""  ExecARexxMacro CONSOLE BED:Rexx/ExecBlk.bed
    ITEM  "PrintBlk"             ""  ExecARexxMacro BED:Rexx/PrintBlk.bed
    ITEM  "RemoveBlankLines"     ""  ExecARexxMacro BED:Rexx/RemoveBlankLines.bed
    ITEM  "SaveBlk"              ""  ExecARexxMacro BED:Rexx/SaveBlk.bed
    ITEM  "SaveChangedDocs"      ""  ExecARexxMacro BED:Rexx/SaveChangedDocs.bed
    ITEM  "SetConfig"            ""  ExecARexxMacro BED:Rexx/SetConfig.bed
    ITEM  "ShowAG"               ""  ExecARexxMacro BED:Rexx/ShowAG.bed
    ITEM  "SortBlk"              ""  ExecARexxMacro BED:Rexx/SortBlk.bed
    ITEM  "UnSetLocks"           ""  ExecARexxMacro BED:Rexx/UnSetLocks.bed
    BAR
    ITEM  "..."                  ""  ExecARexxMacro

  MENU "SAS/C"
    ITEM  "Set Options..."     ""  ExecARexxMacro BED:Rexx/SASC/SetOptions.bed
    BAR
    ITEM  "Build Project..."   ""  ExecARexxMacro CONSOLE BED:Rexx/SASC/Build.bed
    ITEM  "Compile File..."    ""  ExecARexxMacro CONSOLE BED:Rexx/SASC/Compile.bed
    ITEM  "Debug Program"      ""  ExecARexxMacro BED:Rexx/SASC/Debug.bed
    BAR
    ITEM  "Browser"             ""  Nop
      SUB "Invoke"              ""  RunTool "SC:C/SCMsg"
      SUB "Show"                ""  ExecARexxString "ADDRESS SC_SCMSG Show;"
      SUB "Hide"                ""  ExecARexxString "ADDRESS SC_SCMSG Hide;"
      SUB "Clear"               ""  ExecARexxString "ADDRESS SC_SCMSG Clear;"
    ITEM  "Error"               ""
      SUB "First"               ""  ExecARexxMacro BED:Rexx/SASC/ErrorStep.bed TOP
      SUB "Previous"            ""  ExecARexxMacro BED:Rexx/SASC/ErrorStep.bed PREV
      SUB "Current"             ""  ExecARexxMacro BED:Rexx/SASC/ErrorStep.bed
      SUB "Next"                ""  ExecARexxMacro BED:Rexx/SASC/ErrorStep.bed NEXT
      SUB "Last"                ""  ExecARexxMacro BED:Rexx/SASC/ErrorStep.bed BOTTOM
      SBAR
      SUB "Delete"              ""  ExecArexxString "ADDRESS SC_SCMSG Delete;"
    BAR
    ITEM "Find..." ""
      SUB "SAS C Library Function" "" ExecARexxMacro BED:Rexx/SASC/FindSCFunc.bed
      SUB "Struct, Symbol, etc."   "" ExecARexxMacro BED:Rexx/SASC/FindSymbol.bed
      SUB "ASCII AutoDoc"          "" ExecARexxMacro BED:Rexx/SASC/FindAutoDoc.bed
      SUB "AmigaGuide AutoDoc"     "" ExecARexxMacro BED:Rexx/SASC/FindAutoDocAG.bed

  MENU  "Settings"
    ITEM  "Change Prefs"         ""  Nop
      SUB "Auto-Save"              "1" OpenRequester AUTOSAVEPREFS
      SUB "Backup"                 "2" OpenRequester BACKUPPREFS
      SUB "Colors"                 "3" OpenRequester COLORPREFS
      SUB "Display"                "4" OpenRequester DISPLAYPREFS
      SUB "Edit"                   "5" OpenRequester EDITPREFS
      SUB "End Of Lines"           "6" OpenRequester ENDOFLINEPREFS
      SUB "Fonts"                  "7" OpenRequester FONTPREFS
      SUB "Icons"                  "8" OpenRequester ICONPREFS
      SUB "Miscellanea"            "9" OpenRequester MISCPREFS
      SUB "Tabs"                   "0" OpenRequester TABPREFS
      SUB "ARexx"              	   "+" OpenRequester AREXXPREFS
      SUB "Format"                 "-" OpenRequester FORMATPREFS
    BAR
    ITEM  "Open Prefs..."          ""  OpenPrefs
    ITEM  "Save Prefs..."          ""  SavePrefs
    ITEM  "Save Prefs As Defaults" ""  SaveDefPrefs
    BAR
    ITEM  "Open Definitions..."    ""  OpenDefinitions

  MENU "?"
    ITEM  "About BED"            ""  About
    BAR
    ITEM  "Quick Reference"      ""  Help QuickReference
    ITEM  "BED Menus"            ""  Help Standard_Menus
    ITEM  "BED Commands"         ""  ExecARexxMacro BED:Rexx/BedCmdHelp.bed
    BAR
    ITEM  "BED Main Help"        ""  Help
#


;------------------------------------------------------------------------------
;
;  Synopsis:
;
;    <qualifier>-<qualifier>-...-<keystroke>   <command> <arguments>
;
;    Valid qualifiers are:
;    - SHIFT
;    - CTRL
;    - ALT
;    - LEFT_AMIGA
;
;    Valid keystrokes are:
;    - RETURN
;    - ENTER
;    - BACKSPACE
;    - DEL
;    - TAB
;    - ESC
;    - HELP
;    - CURSOR_LEFT
;    - CURSOR_RIGHT
;    - CURSOR_UP
;    - CURSOR_DOWN
;    - F1
;    - ...
;    - F12
;    - NP_HOME
;    - NP_END
;    - NP_PGUP
;    - NP_PGDN
;    - NP_INS
;    - NP_DEL
;    - NP_CURSORUP
;    - NP_CURSORDOWN
;    - NP_CURSORLEFT
;    - NP_CURSORRIGHT
;    - NP_SCRL
;    - NP_PRTSC
;
;------------------------------------------------------------------------------

KEYBOARD:

  RETURN            InsertLine
  ENTER             InsertLine INDENT
  BACKSPACE         BackSpace
  DEL               Delete
  TAB               InsertTab
  ESC
  HELP              Help QuickReference

  CURSOR_UP         MoveUp
  CURSOR_DOWN       MoveDown
  CURSOR_RIGHT      MoveRight
  CURSOR_LEFT       MoveLeft

  F1            OpenDoc
  F2            OpenFile
  F3            MoveMatchBkt
  F4            ExecARexxMacro CONSOLE BED:Rexx/CmdShell.bed
  F5            NewShell
  F6            ExecARexxMacro BED:Rexx/PrevParagraph.bed
  F7            ExecARexxMacro BED:Rexx/NextParagraph.bed
  F8            ExecARexxMacro BED:Rexx/IndentBlk.bed
  F9            SaveFile QUIET MODIFIED
  F10           ActivateNextDoc FRONT

  SHIFT-RETURN      InsertLine NOBREAK
  SHIFT-ENTER       InsertLine INDENT NOBREAK
  SHIFT-BACKSPACE   DeleteSOW
  SHIFT-DEL         DeleteEOW
  SHIFT-TAB         InsertTab EXPAND
  SHIFT-ESC
  SHIFT-HELP        Help

  SHIFT-CURSOR_UP       MoveUpScr
  SHIFT-CURSOR_DOWN     MoveDownScr
  SHIFT-CURSOR_RIGHT    MoveNextWord
  SHIFT-CURSOR_LEFT     MovePrevWord

  SHIFT-F1     Help
  SHIFT-F2     OpenDoc FILEREQ
  SHIFT-F3     UndoLine
  SHIFT-F4     SetWindowSpec
  SHIFT-F5     IconifyWindow TOGGLE
  SHIFT-F6     FormatParagraph
  SHIFT-F7     Justify
  SHIFT-F8     ExecARexxMacro BED:Rexx/UnindentBlk.bed
  SHIFT-F9     SaveFileAs
  SHIFT-F10    ActivatePrevDoc FRONT

  ALT-RETURN      InsertLine INDENT NOBREAK
  ALT-ENTER       InsertLine NOBREAK
  ALT-BACKSPACE   DeleteSOL
  ALT-DEL         DeleteEOL
  ALT-TAB         MovePrevTabStop
  ALT-ESC         CloseDoc
  ALT-HELP

  ALT-CURSOR_UP         MoveSOF
  ALT-CURSOR_DOWN       MoveEOF
  ALT-CURSOR_RIGHT      MoveEOL
  ALT-CURSOR_LEFT       MoveSOL

  ALT-F1        MoveBookmark 1
  ALT-F2        MoveBookmark 2
  ALT-F3        MoveBookmark 3
  ALT-F4        MoveBookmark 4
  ALT-F5        MoveBookmark 5
  ALT-F6        MoveBookmark 6
  ALT-F7        MoveBookmark 7
  ALT-F8        MoveBookmark 8
  ALT-F9        MoveBookmark 9
  ALT-F10       MoveBookmark 10

  CTRL-RETURN       InsertLine INDENT
  CTRL-ENTER        InsertLine
  CTRL-BACKSPACE    DeleteLine
  CTRL-DEL          DeleteLine
  CTRL-TAB          MoveNextTabStop
  CTRL-ESC          Quit
  CTRL-HELP

  CTRL-CURSOR_UP        ScrollView -1 RELATIVE
  CTRL-CURSOR_DOWN      ScrollView 1 RELATIVE
  CTRL-CURSOR_RIGHT     ShiftRight
  CTRL-CURSOR_LEFT      ShiftLeft

  CTRL-F1        SetBookmark 1
  CTRL-F2        SetBookmark 2
  CTRL-F3        SetBookmark 3
  CTRL-F4        SetBookmark 4
  CTRL-F5        SetBookmark 5
  CTRL-F6        SetBookmark 6
  CTRL-F7        SetBookmark 7
  CTRL-F8        SetBookmark 8
  CTRL-F9        SetBookmark 9
  CTRL-F10       SetBookmark 10

  CTRL-R      SetPrefs ReadOnly       TOGGLE
  CTRL-T      SetPrefs TabsGiveSpaces TOGGLE
  CTRL-I      SetPrefs AutoIndent     TOGGLE
  CTRL-F      SetPrefs FreeForm       TOGGLE
  CTRL-O      SetPrefs Overstrike     TOGGLE
  CTRL-W      SetPrefs WordWrap       TOGGLE
  CTRL-J      SetPrefs JumpScroll     TOGGLE
  CTRL-B      SetPrefs MakeBackups    TOGGLE
  CTRL-K      SetPrefs IBMKeypad      TOGGLE

  CTRL-Q      SetQuoteMode ON

  CTRL-1      SetPrefs TEXTCOLOR
  CTRL-2      SetPrefs BACKGROUNDCOLOR
  CTRL-3      SetPrefs SELTEXTCOLOR
  CTRL-4      SetPrefs SELBACKGROUNDCOLOR

  ALT-CTRL-CURSOR_LEFT     MoveSOW
  ALT-CTRL-CURSOR_RIGHT    MoveEOW

  ALT-CTRL-DEL             DeleteEOW
  ALT-CTRL-BACKSPACE       DeleteSOW

  NP_HOME         MoveSOF
  NP_END          MoveEOF
  NP_PGUP         ScrollView PAGEUP
  NP_PGDN         ScrollView PAGEDOWN
  NP_INS          SetPrefs OverStrike TOGGLE
  NP_DEL          Delete
  NP_CURSORUP     ScrollVert -1
  NP_CURSORDOWN   ScrollVert 1
  NP_CURSORLEFT   MoveLeft
  NP_CURSORRIGHT  MoveRight
  NP_SCRL         SetPrefs ReadOnly TOGGLE
  NP_PRTSC        PrintFile
#

;------------------------------------------------------------------------------
;
;  Synopsis:
;
;    <mouse button>   <command> <arguments>
;
;    Valid mouse buttons are:
;
;    - DOUBLELEFT
;    - DOUBLEMIDDLE
;    - LEFTRIGHT
;    - LEFTMIDDLE
;    - MIDDLERIGHT
;    - MIDDLELEFT
;
;------------------------------------------------------------------------------

MOUSE_BUTTONS:

  LEFTMIDDLE
  LEFTRIGHT               MarkBlk
  MIDDLELEFT
  MIDDLERIGHT
  DOUBLELEFT              MarkBlk
  DOUBLEMIDDLE
#
