home *** CD-ROM | disk | FTP | other *** search
- /*H* RDBMENU.KEX 02-11-93 11:32*/
- /*!1 arg . m ver dbfullsw dberrorsw dblogsw dbtracesw, */
- arg source m ver dbfullsw dberrorsw dblogsw dbtracesw,
- dbtallysw dbwatchsw dbcount dbwait dbwatch
- Signal On Error; Signal On Failure; Signal On Halt
- Signal On Novalue; Signal On Notready; Signal ON Syntax
- Parse Value 'COMMAND SET!COMMAND X!COMMAND EXT' With dbcs'!'dbxx'!'dbce
- Parse Value 'COMMAND!COMMAND SOS' With dbc'!'dbso
- dbce '/FN/OPSYS'
- dbme='rdbMENU'
- dbsys=opsys.1
- Parse Value 0 With dbtrc dbtrap dbtrapp dbmsg dbtcode
- if dbsys='OS/2' then dbsys='OS2' /*O*/
- /*!1 if source='?' then /*Exit*/ Return tell(dbme)*/
- if source='?' then /*Exit*/ Return tell(dbme) /*!1*/
- if m='' then parse value 'F' 1 with m ver
- if m='O' then do
- Parse Value rdbvars() with dbtrc dbtrap
- if dbtrc=-7 then return -7 dbtrap
- interpret dbtrc dbtrap; end
- dbce '/LSCR'
- if lscreen.3<13 then dbscr=1; else dbscr=2
- If dbscr=2 then dbso 'TABCMDB'
- dbce '/PREF/FLSCR/CURL/LINE/CURS'
-
- if prefix.1='ON' then prefix=6
- else prefix=0
- parse value db3menu(m) with dbtrc dbtrap
- if dbtrc=-7 then return -7 dbtrap
- str=dbtrc dbtrap
- Parse Value line.1 '┌'copies('─',78)'┐' '│' d2c(16) strip(m),
- With sline line bar mark m
- parse var str start width items '!' str
- width=width+1
- do i=0 to 11
- subs=substr(str,i*width+1,width)
- if subs='' then leave
- if i=ver then subs=overlay(mark,subs,3,1)
- dbc 'MSG' overlay(subs,line,start)
- '+1 EXT /CURL/LINE'
- if line.1<1 then line=''
- else line=bar''left(copies(' ',prefix)curline.3,78)bar
- end
- signal off error
- ':'sline
- signal on error
- If dbscr=2 then dbso 'TABCMDF'
- if cursor.3 > 0 then do
- dbc 'l :'cursor.3
- dbc 'cl :'cursor.2; end
- else dbso 'TABC'
- if dbtrc=-7 then return -7 dbtrap
-
- /*Exit*/ Return items; db3MENU:
- arg menu
- menu.F='2 18 O S A * P * E !',
- '┌────────────────┐',
- '│ Open │',
- '│ Save │',
- '│ save As... │',
- '├────────────────┤',
- '│ *Print log │',
- '├────────────────┤',
- '│ Exit │',
- '└────────────────┘'
-
- menu.V='9 25 M O R H S Z !',
- '┌───────────────────────┐',
- '│ menu/window -> F2 │',
- '│ Output screen F4 │',
- '│ Refresh screen C-F4 │',
- '│ scroll Horizon. F12 │',
- '│ Switch screen F6 │',
- '│ Zoom │',
- '└───────────────────────┘'
-
- menu.R='17 23 S R G C !',
- '┌─────────────────────┐',
- '│ Start Shift+F5 │',
- '│ Restart │',
- '│ Go to cursor F7 │',
- '│ Continue F5 │',
- '└─────────────────────┘'
-
- menu.D='24 31 S P * T * B A N !',
- '┌─────────────────────────────┐',
- '│ Step F8 │',
- '│ Procedure step F10 │',
- '├─────────────────────────────┤',
- '│ Trace on/off │',
- '├─────────────────────────────┤',
- '│ toggle Breakpoint F9 │',
- '│ toggle All breakpoints │',
- '│ set Next statement │',
- '└─────────────────────────────┘'
-
- menu.W='32 19 A S D E R !',
- '┌─────────────────┐',
- '│ Add... S-F3 │',
- '│ Show │',
- '│ Delete... │',
- '│ *Edit │',
- '│ Remove │',
- '└─────────────────┘'
-
- menu.C='40 19 B E S D !',
- '┌─────────────────┐',
- '│ Break │',
- '│ Exclude │',
- '│ Skip │',
- '│ Debug │',
- '└─────────────────┘'
- menu.O='51 19 F E L T A W C I !',
- '┌─────────────────┐',
- '│ Fullsw ' dbfullsw ' │',
- '│ Errorsw' Dberrorsw ' │',
- '│ Logsw ' Dblogsw ' │',
- '│ Tracesw' Dbtracesw ' │',
- '│ tAllysw' Dbtallysw ' │',
- '│ Watchsw' Dbwatchsw ' │',
- '│ Count ' DbCount copies(' ',6-length(dbcount)) '│',
- '│ waIt ' DbwaIt ' │',
- ' '
- /*
- menu.O='51 19 S F E L T A W C I !',
- '│ Switches │',
- '└─────────────────┘'
- */
-
- menu.T='61 16 C F I P P M S Y X!',
- '┌──────────────┐',
- '│ *Case │',
- '│ Files │',
- '│ *Indentation │',
- '│ Profiler │',
- '│ *Match │',
- '│ *Structure │',
- '│ *sYntax │',
- '│ *Xref │',
- '└──────────────┘'
-
- menu.H='48 31 I C T U * A !',
- '┌─────────────────────────────┐',
- '│ Index │',
- '│ Contents │',
- '│ Topic: │',
- '│ Using Help │',
- '├─────────────────────────────│',
- '│ About... │',
- '└─────────────────────────────┘'
-
- menu.1='2 18 O S A * P * C E !',
- '┌────────────────┐',
- '│ Open... │',
- '│ Save │',
- '│ save As... │',
- '├────────────────┤',
- '│ Print │',
- '├────────────────┤',
- '│ Continue │',
- '│ Exit │',
- '└────────────────┘'
-
- menu.2='2 18 N S A * P * C R E !',
- '┌────────────────┐',
- '│ New │',
- '│ Save │',
- '│ save As... │',
- '├────────────────┤',
- '│ Print │',
- '├────────────────┤',
- '│ Continue │',
- '│ *Rerun │',
- '│ Exit │',
- '└────────────────┘'
-
- menu.3='2 18 N S * P * C E !',
- '┌────────────────┐',
- '│ New │',
- '│ Save │',
- '├────────────────┤',
- '│ Print │',
- '├────────────────┤',
- '│ Continue │',
- '│ Exit │',
- '└────────────────┘'
-
- menu.4='2 18 S A * C E !',
- '┌────────────────┐',
- '│ Save │',
- '│ save As... │',
- '├────────────────┤',
- '│ Continue │',
- '│ Exit │',
- '└────────────────┘'
-
- menu.U='2 18 S * P * Q D E !',
- '┌────────────────┐',
- '│ Save │',
- '├────────────────┤',
- '│ Print │',
- '├────────────────┤',
- '│ Quit │',
- '│ Continue │',
- '│ Exit │',
- '└────────────────┘'
-
- return menu.menu;
- ERROR: return db9trap(sigl 80e) sourceline(sigl)
- FAILURE: return db9trap(sigl 80f) sourceline(sigl)
- HALT: return db9trap(sigl 80h)
- NOTREADY: return db9trap(sigl 80r) sourceline(sigl)
- NOVALUE: return db9trap(sigl 80v)
- SYNTAX: return db9trap(sigl 80e) errortext(rc)'~'sourceline(sigl)
- db9TRAP:
- if dbtrc=-7 then dbtrapp=dbtrap
- parse arg dbsigl dbtcode dbtrest
- dbtrap = 0 dbme dbsigl dbtcode dbmsg rdbmsg(dbtcode dbme dbsigl) dbtrest
- dbtrc=-7
- return -7 dbtrapp'~'dbtrap
-