home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 February / PCWorld_2000-02_cd.bin / live / usr / X11R6 / lib / X11 / app-defaults / Ddd < prev    next >
Text File  |  1998-10-06  |  309KB  |  7,854 lines

  1. ! $Id: Ddd.in.m4,v 1.255 1998/06/18 12:13:24 zeller Exp $ -*- xrdb -*-
  2. ! DDD Resource File.  DO NOT INSTALL THIS FILE!  See below for details.
  3. ! Generated automatically from Ddd.in by configure.
  4. ! Generated automatically from Ddd.in.m4 and TIPS by m4.
  5. Ddd*appDefaultsVersion: 3.0
  6.  
  7. ! Copyright (C) 1995-1998 Technische Universitaet Braunschweig, Germany.
  8. ! Written by Andreas Zeller <zeller@ips.cs.tu-bs.de>.
  9. ! This file is part of DDD.
  10. ! DDD is free software; you can redistribute it and/or
  11. ! modify it under the terms of the GNU General Public
  12. ! License as published by the Free Software Foundation; either
  13. ! version 2 of the License, or (at your option) any later version.
  14. ! DDD is distributed in the hope that it will be useful,
  15. ! but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. ! See the GNU General Public License for more details.
  18. ! You should have received a copy of the GNU General Public
  19. ! License along with DDD -- see the file COPYING.
  20. ! If not, write to the Free Software Foundation, Inc.,
  21. ! 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  22. ! DDD is the data display debugger.
  23. ! For details, see the DDD World-Wide-Web page, 
  24. ! `http://www.cs.tu-bs.de/softech/ddd/',
  25. ! or send a mail to the DDD developers <ddd@ips.cs.tu-bs.de>.
  26.  
  27. ! =================================================================
  28. ! NOTE: If you're looking here for things to customize, look
  29. ! under the DDD `Preferences' menu first.  Many things are customizable
  30. ! from there.  Things which are settable via the Preferences dialog
  31. ! are stored in the `~/.ddd/init' file.
  32. ! =================================================================
  33. !
  34. ! This file lists the default resources built into DDD.  You can use the
  35. ! stuff in this file for examples of how to customize DDD for your
  36. ! environment; normally you will do this by copying the few lines you
  37. ! want to alter to your private resource database, which usually lives
  38. ! in a file called `.Xdefaults' in your home directory.     You may also 
  39. ! place such lines in the DDD-specific `.ddd/init' file in your home
  40. ! directory.
  41. ! Site administrators **may** want to make changes here and install this
  42. ! file as the global app-defaults file for the site.  To do this, one
  43. ! would copy this file to `/usr/lib/X11/app-defaults/Ddd', or on SunOS,
  44. ! `/usr/openwin/lib/app-defaults/Ddd'.  (Actually this directory could
  45. ! be anywhere; only the person who installed X knows for sure.)
  46. ! It is **STRONGLY RECOMMENDED** that you not install this file in the
  47. ! `app-defaults' directory unless you are really sure you know what you
  48. ! are doing.  There are a whole slew of version-skew problems associated
  49. ! with app-defaults files, which are best avoided by simply not using
  50. ! them.     In particular, if the app-defaults file for a program is
  51. ! installed, and you get a new version of that program, you can't
  52. ! properly test out the new version without actually installing it,
  53. ! since it will pick up the resources for the previous version, and will
  54. ! quite likely malfunction.
  55. ! In short, app-defaults files are bad.  Don't use them.  Use this file
  56. ! for informational purposes as suggested above.
  57. !
  58. ! Debian note
  59. ! -----------
  60. !
  61. ! Debian policy currently requires application defaults to be included with
  62. ! packages, but considers them as part of the program code. Thus, you should
  63. ! not change this file, as it will get overwritten by an update. If you want
  64. ! to customise, the proper place is `/etc/X11/Xresources'.
  65.  
  66. !-----------------------------------------------------------------------------
  67. ! User-settable resources
  68. !-----------------------------------------------------------------------------
  69.  
  70. ! The inferior debugger type (dbx, gdb, xdb, jdb, or pydb; defaults to gdb)
  71. Ddd*debugger:
  72.  
  73.  
  74. ! The name under which the inferior debugger is to be invoked
  75. ! (default: debugger type)
  76. Ddd*debuggerCommand:
  77.  
  78.  
  79. ! On if data and source are to be displayed in separate top-level
  80. ! windows.  If this is off, the data and source windows are attached
  81. ! to the debugger console.
  82. Ddd*Separate: off
  83.  
  84.  
  85. ! You may also attach the source window or data window alone.
  86. ! Ddd*separateDataWindow: on
  87. ! Ddd*separateSourceWindow: on
  88.  
  89.  
  90. ! The windows may be initially on or off.  By default, the data window 
  91. ! remains closed since it will be opened anyway as soon as we create
  92. ! the first display.
  93. Ddd*openDebuggerConsole: on
  94. Ddd*openSourceWindow:    on
  95. Ddd*openDataWindow:      off
  96.  
  97.  
  98. ! On if programs are to be run in a separate top-level window.
  99. ! If this is off, input/output is sent to the debugger console.
  100. !
  101. ! Although a separate execution window has several advantages, it
  102. ! is less portable and more error-prone, which is why it is disabled 
  103. ! by default.
  104. Ddd*separateExecWindow: off
  105.  
  106.  
  107. ! On if DDD windows are to be iconified/uniconified as a whole.
  108. ! If this is off, every DDD window can be iconified on its own.
  109. Ddd*groupIconify: off
  110.  
  111.  
  112. ! On if DDD windows are to be uniconified when GDB becomes ready.
  113. Ddd*uniconifyWhenReady: on
  114.  
  115.  
  116. ! On if the TAB key is to complete text in all DDD windows.
  117. ! If this is off, the TAB key completes in the debugger console only.
  118. Ddd*globalTabCompletion: on
  119.  
  120.  
  121. ! The key binding style to use for Cut/Copy/Paste:
  122. !
  123. ! * `Motif' means Cut/Copy/Paste is on Shift+Del/Ctrl+Ins/Shift+Ins.
  124. !   This is conformant to the Motif style guide and the default
  125. !   setting in DDD 2.x and earlier.
  126. ! * `KDE' means Cut/Copy/Paste is on Ctrl+X/Ctrl+C/Ctrl+V.  
  127. !   This is conformant to the KDE style guide.  Note that this also 
  128. !   means that you must use ESC to interrupt the debuggee.
  129. !
  130. ! In this release, the default is still Motif, but this may change to KDE 
  131. ! in some future version.
  132. Ddd*cutCopyPasteBindings: Motif
  133.  
  134.  
  135. ! On if the debugger console is line-buffered (i.e. flushed upon 
  136. ! each newline).  This is slower, but gives nice scrolling.
  137. ! Off if newline has no special treatment.
  138. Ddd*lineBufferedConsole: on
  139.  
  140.  
  141. ! On if options are to be saved in `~/.ddd/init' across DDD invocations.
  142. Ddd*saveOptionsOnExit: off
  143.  
  144.  
  145. ! The command to invoke the execution window for showing I/O of the debugged
  146. ! program.  To this string, DDD appends bourne shell commands which must be
  147. ! run in the execution window.
  148. ! The string `@FONT@' is replaced by the current DDD text font.
  149. Ddd*termCommand: xterm -bg 'grey96' -fg 'black' \
  150. -cr 'DarkGreen' -fn '@FONT@' -title 'DDD: Execution Window' -e /bin/sh -c
  151.  
  152. ! The command to invoke to select fonts.
  153. ! The string `@FONT@' is replaced by the current DDD default font.
  154. Ddd*fontSelectCommand: xfontsel -bg 'grey' -fg 'black' -fn '@FONT@' \
  155. -title 'DDD: @TYPE@ selector' -print
  156.  
  157.  
  158. ! The terminal type provided by `termCommand' (that is, the value of
  159. ! the TERM environment variable to be passed to the debugged program)
  160. Ddd*termType: xterm
  161.  
  162.  
  163. ! The `useTTYCommand' resource sets the redirection mode for the execution
  164. ! window. Basically, there are two ways to redirect process I/O.  Both have
  165. ! advantages and disadvantages.
  166. !
  167. ! * GDB provides a `tty' command to redirect I/O to a separate tty.
  168. !   This is portable, but on some systems, there is the nasty side-effect
  169. !   that redirection can not be undone.
  170. !   For DBX, this means using the `dbxenv run_io pty' and `dbxenv run_pty'
  171. !   commands to redirect I/O to the execution window.
  172. !   Set `useTTYCommand' to `on' to enable this behaviour.
  173. ! * As an alternative, DDD can redirect the process I/O explicitly,
  174. !   without using the `tty' command.  This is done with XDB and 
  175. !   with DBX versions that do not support tty redirection.
  176. !   Explicit redirection may fail if you use a non-standard shell.
  177. !   Set `useTTYCommand' to `off' to enable this behaviour.
  178. !   
  179. ! The default setting is `off', since explicit redirection is easier
  180. ! to handle (and to debug :-).  Maybe one day GDB will provide a way
  181. ! to undo redirection.
  182. Ddd*useTTYCommand: off
  183.  
  184.  
  185. ! The `blockTTYInput' resource sets whether DDD should block when
  186. ! reading data from GDB via the pseudo-tty interface.  Some systems
  187. ! require this, such as Linux with libc 5.4.33 and earlier; set it to
  188. ! `on'.  Some other systems prohibit this, such as Linux with GNU libc
  189. ! 6 and later; set it to `off'.  The value `auto' will select the
  190. ! `best' choice (that is, the best choice known to the DDD developers).
  191. Ddd*blockTTYInput: auto
  192.  
  193.  
  194. ! The `rsh' command to invoke tty-based commands on other hosts.
  195. ! On some systems, this is called `remsh'; on others, `on'.
  196. ! You may want to consult your system documentation for details.
  197. Ddd*rshCommand: /usr/bin/rsh
  198.  
  199.  
  200. ! If `rsh' is used without commands, using the `--rhost' option,
  201. ! the remote environment may need to be set up for DDD.  Especially, 
  202. ! echoing must be disabled; mapping of NL to CR/NL is harmful as well.
  203. ! The following commands are always issued first in the remote
  204. ! interactive shell.
  205. Ddd*rHostInitCommands: stty -echo -onlcr
  206.  
  207.  
  208. ! The `ps' command to get a list of processes.
  209. ! The first line of the output must either contain a `PID' title, 
  210. ! or each line must begin with a process ID.
  211. !
  212. ! We try the BSD style `ps -x' first, then System V `ps -ef'.  If that
  213. ! fails, too, use plain `ps'.
  214. Ddd*psCommand: ps -x 2> /dev/null || ps -ef 2> /dev/null || ps
  215.  
  216.  
  217. ! The `print' command to print a postscript file.
  218. ! On some systems, this is called `lp'; on others, `lpr'.
  219. ! You may want to consult your system documentation for details.
  220. Ddd*printCommand: lp -c
  221.  
  222.  
  223. ! Paper size, in format WIDTH x HEIGHT.  (Default: A4).
  224. Ddd*paperSize: 210mm x 297mm
  225.  
  226.  
  227. ! The `edit' command to invoke an editor on the specific file.
  228. ! `@LINE@' is replaced by the current line number,
  229. ! `@FILE@' by the file name.  Default is to invoke $XEDITOR first,
  230. ! then $EDITOR, then VI.
  231. Ddd*editCommand: \
  232. ${XEDITOR-false} +@LINE@ @FILE@ \
  233. || xterm -e ${EDITOR-vi} +@LINE@ @FILE@
  234.  
  235.  
  236. ! A command to get a core dump of a running process (typically, `gcore')
  237. ! `@FILE@' is replaced by the base name of the file to create;
  238. ! `@PID@' is replaced by the process id.  The output must be
  239. ! written to `@FILE@.@PID@'.
  240. ! Leave this entry empty if you have no `gcore' or similar command.
  241. Ddd*getCoreCommand: 
  242.  
  243.  
  244. ! Commands to list all executable/source/core/directory
  245. ! files matching @MASK@.
  246. ! These commands are executed on remote hosts only.
  247. Ddd*listExecCommand:   \
  248.     file @MASK@ | grep '.*:.*exec.*' | grep -v  '.*:.*script.*' \
  249.     | cut -d: -f1 | grep -v '.*\\.o$'
  250. Ddd*listSourceCommand: \
  251.     file @MASK@ | grep '.*:.*text.*' | cut -d: -f1
  252. Ddd*listCoreCommand:   \
  253.     file @MASK@ | grep '.*:.*core.*' | cut -d: -f1
  254. Ddd*listDirCommand:   \
  255.     file @MASK@ | grep '.*:.*directory.*' | cut -d: -f1
  256.  
  257.  
  258. ! Command to uncompress the DDD manual.  Reads from standard input and
  259. ! writes to standard output.
  260. Ddd*uncompressCommand: gzip -d -c
  261.  
  262.  
  263. ! The DDD WWW page.
  264. Ddd*wwwPage: http://www.cs.tu-bs.de/softech/ddd/
  265.  
  266. ! Command to invoke the WWW page.  @URL@ stands for the URL to open.
  267. ! We prefer running browsers (mozilla or netscape) over everything else, if
  268. ! there aren't any, we invoke $WWBROWSER; if that fails, we try firing up
  269. ! other browsers; free graphic ones first.
  270. ! Note that if you don't have WWW access, letting all these commands fail
  271. ! may take a lot of time...
  272. Ddd*wwwCommand: \
  273.    mozilla -remote 'openURL(@URL@)' \
  274. || netscape -remote 'openURL(@URL@)' \
  275. || ${WWWBROWSER-false} '@URL@' \
  276. || mozilla '@URL@' \
  277. || gnome-help-browser '@URL' \
  278. || netscape '@URL@' \
  279. || gnudoit '(w3-fetch \042@URL@\042)' \
  280. || mosaic '@URL@' \
  281. || Mosaic '@URL@' \
  282. || xterm -e lynx '@URL@'
  283.  
  284. ! The time (in seconds) to wait for synchronous GDB questions to complete
  285. Ddd*questionTimeout: 10
  286.  
  287.  
  288. ! Toolbar appearance.
  289. ! Whether to have one common toolbar for one-window configurations.
  290. Ddd*commonToolBar: on
  291.  
  292. ! Whether toolbars should be placed at the bottom (Default in DDD 2.x 
  293. ! and earlier)
  294. Ddd*toolbarsAtBottom: off
  295.  
  296. ! Whether to display images and/or captions.  Turing both off causes
  297. ! toolbars to display strings (as in DDD 2.x and earlier).  The common
  298. ! toolbar, however, never displays strings - there is not enough place.
  299. Ddd*buttonImages:   on
  300. Ddd*buttonCaptions: on
  301.  
  302. ! The image and caption areas within button images.
  303. Ddd*buttonImageGeometry:   21x17+4+0
  304. Ddd*buttonCaptionGeometry: 29x7+0-0
  305.  
  306. ! Whether to use `flat' buttons that only have a 3d appearance when entered
  307. Ddd*FlatButtons: on
  308.  
  309. ! This may also be set separately for two categories.
  310. ! Ddd*flatToolbarButtons: on
  311. ! Ddd*flatDialogButtons:  on
  312.  
  313.  
  314. ! The color key to use for buttons.
  315. !   Color (`c')  - color
  316. !   Grey  (`g')  - greyscale
  317. !   Mono  (`m')  - monochrome
  318. ! See the XPM documentation for details.
  319. Ddd*buttonColorKey: g
  320.  
  321. ! Whether to check buttons if their commands are actually supported by
  322. ! the inferior debugger.
  323. Ddd*verifyButtons: on
  324.  
  325. ! Newline-separated lists of GDB commands for which buttons are to be created.
  326. !
  327. ! All buttons send the named command to GDB.
  328. ! Commands ending with '...' insert their name, followed by a space.
  329. ! Commands ending with a control character insert the given
  330. ! control character.  As of DDD 2.0, commands ending with `()' insert
  331. ! the current contents of the argument field `()'.
  332. !
  333. ! The following button names have special meanings:
  334. ! - `Clear'    : Clear current command
  335. ! - `Prev'     : Show previous command
  336. ! - `Next'     : Show next command
  337. ! - `Apply'    : Send the given command to GDB
  338. ! - `Back'     : Lookup previously selected source position
  339. ! - `Forward'  : Lookup next selected source position
  340. ! - `Edit'     : Edit current source file
  341. ! - `Make'     : Remake current program
  342. ! - `Reload'   : Reload source file
  343. ! - `Complete' : Complete current command
  344. ! - `Yes'      : Answer current GDB prompt
  345. ! - `No'       : Answer current GDB prompt
  346.  
  347. ! The debugger console buttons (none: no buttons)
  348. Ddd*consoleButtons:
  349. ! The following setting was effective in DDD 1.4d and earlier:
  350. ! Ddd*consoleButtons: \
  351. !    Yes\nNo\ninterrupt^C
  352. ! Here is a very extensive setting:
  353. ! Ddd*consoleButtons: \
  354. !    Yes\nNo\nrun\nClear\nPrev\nNext\nApply\ninterrupt^C
  355.  
  356. ! The source window buttons (none: no buttons)
  357. Ddd*sourceButtons:
  358. ! The following setting was effective in DDD 1.x:
  359. ! Ddd*sourceButtons:        \
  360. ! run\nstep\nnext\nstepi\nnexti\ncont\nfinish\nkill\n\
  361. ! up\ndown\nBack\nForward\nEdit\ninterrupt^C
  362.  
  363. ! The data window buttons (none: no buttons)
  364. Ddd*dataButtons:
  365.  
  366. ! The command tool buttons, as of DDD 2.0 and later.
  367. Ddd*toolButtons: \
  368. run\nbreak^C\nstep\nstepi\nnext\nnexti\nuntil\nfinish\ncont\n\kill\n\
  369. up\ndown\nBack\nForward\nEdit\nMake
  370.  
  371. Ddd*break.labelString: Interrupt
  372.  
  373.  
  374. ! Command tool stuff.
  375.  
  376. ! Do we want a sticky command tool?  If on, the command tool follows
  377. ! every movement of the source window, such that the relative position
  378. ! remains unchanged.
  379. Ddd*stickyTool: on
  380.  
  381. ! Do we want a decorated command tool?
  382. ! * If `on', DDD will set up the command tool as a top-level window,
  383. !   which is decorated like DDD main windows.
  384. ! * If `off', DDD realizes the command tool as a transient window, which
  385. !   may be decorated or not, depending on the settings of your window
  386. !   manager.
  387. ! * If `auto', DDD checks the window manager.  If it decorates
  388. !   transients, the command tool is realized as a transient, and as
  389. !   a top-level-window. otherwise.
  390. Ddd*decoratedTool: auto
  391.  
  392. ! Do we want an auto-raised command tool?  If on, DDD will always 
  393. ! keep the command tool on top of other DDD windows.  If this setting
  394. ! interferes with your window manager, set this resource to off.
  395. Ddd*autoRaiseTool: on
  396.  
  397. ! Do we want a command tool bar instead of the command tool?
  398. Ddd*commandToolBar: off
  399.  
  400. ! The offset between the upper right corner of the command tool
  401. ! and the upper right courner in the source window.
  402. Ddd*toolRightOffset: 8
  403. Ddd*toolTopOffset:   8
  404.  
  405. ! Do we want auto-raised menus?  This is handy with certain window managers:
  406. ! An auto-raised DDD might obscure popped up pulldown menus.  However, there's
  407. ! a risk that this might interfere with Motif, which is why this is off.
  408. Ddd*autoRaiseMenu: off
  409.  
  410.  
  411. ! Shortcuts
  412. ! A newline-separated list of expressions to be included in the
  413. ! `Display ()' menu.  This is usually edited at run-time.
  414. Ddd*displayShortcuts: \
  415. /d ()    // Convert to Dec\n\
  416. /x ()    // Convert to Hex\n\
  417. /o ()    // Convert to Oct
  418.  
  419.  
  420. ! Tab width in source texts
  421. Ddd*tabWidth:            8
  422.  
  423. ! Number of characters to indent the source and machine code
  424. Ddd*indentSource:    0
  425. Ddd*indentCode:            4
  426.  
  427. ! Width of line numbers (if enabled; see the `displayLineNumbers' resource)
  428. ! Line numbers wider than this value extend into the breakpoint space.
  429. Ddd*lineNumberWidth:    4
  430.  
  431. ! The minimum number of lines to show before the current location.
  432. Ddd*linesAboveCursor:    2
  433.  
  434. ! The minimum number of lines to show after the current location.
  435. Ddd*linesBelowCursor:    3
  436.  
  437.  
  438. ! The GDB initialization commands.  DDD depends on these settings,
  439. ! so don't change them unless required by your GDB version.
  440. ! Use a personal `~/.gdbinit' file instead to customize GDB.
  441. !
  442. ! If a `set' command begins in the first column, the appropriate entry
  443. ! in the `settings' panel is disabled - that is, the setting is frozen.
  444. !
  445. ! Users of GDB 4.12 and earlier may wish to add a line `display /x $pc',
  446. ! as these GDB versions do not issue the current PC location when source
  447. ! code is not available.
  448. !
  449. ! Note: GDB 4.16 and earlier do not understand the `set annotate' command;
  450. ! just ignore the warning message.
  451. Ddd*gdbInitCommands:    \
  452. set prompt (gdb) \n\
  453. set height 0\n\
  454. set width 0\n\
  455. set annotate 1\n\
  456.  set verbose off\n
  457.  
  458. ! The GDB settings.  Usually overridden in `~/.ddd/init'.
  459. Ddd*gdbSettings: \
  460. set print asm-demangle on\n
  461.  
  462.  
  463. ! The DBX initialization commands. Make sure the TTY is in a proper state,
  464. ! by invoking a `stty' command; Some DBXes require this.
  465. !
  466. ! Do not change these settings.  Use a personal `~/.dbxinit' 
  467. ! or `~/.dbxrc' file to customize DBX.
  468. Ddd*dbxInitCommands: \
  469. sh stty -echo -onlcr\n\
  470. set $page = 1\n
  471.  
  472. ! The DBX settings.  Usually overridden in `~/.ddd/init'.
  473. Ddd*dbxSettings:
  474.  
  475.  
  476. ! The XDB initialization commands.  Define some macros to make common 
  477. ! commands available.
  478. !
  479. ! Do not change these settings.  Use a personal `~/.xdbrc' file
  480. ! to customize DBX.
  481. Ddd*xdbInitCommands: \
  482. sm\n\
  483. def run r\n\
  484. def cont c\n\
  485. def next S\n\
  486. def step s\n\
  487. def quit q\n\
  488. def finish { bu \\1t ; c ; L }\n
  489.  
  490. ! The XDB settings.  Usually overridden in `~/.ddd/init'.
  491. Ddd*xdbSettings:
  492.  
  493.  
  494. ! The JDB initialization commands.  Nothing special.
  495. Ddd*jdbInitCommands:
  496.  
  497. ! The JDB settings.  Usually overridden in `~/.ddd/init'.
  498. Ddd*jdbSettings:
  499.  
  500.  
  501. ! The PYDB initialization commands.  Nothing special.
  502. Ddd*pydbInitCommands:
  503.  
  504. ! The PYDB settings.  Usually overridden in `~/.ddd/init'.
  505. Ddd*pydbSettings:
  506.  
  507.  
  508. ! If on, let GDB source all initialization commands from a temporary file.
  509. ! This is slightly faster than processing each command separately,
  510. ! but gives bad diagnostics.
  511. Ddd*sourceInitCommands: on
  512.  
  513.  
  514. ! Auto-command defaults
  515.  
  516. ! Are auto-commands enabled?  If yes, any output of the inferior debugger
  517. ! in the form `PREFIX: COMMAND' (where PREFIX is the autoCommandPrefix, 
  518. ! as defined below) will cause DDD to execute the so-called 
  519. ! auto-command COMMAND.  This is useful for defining own DDD command 
  520. ! sequences.
  521. ! Unfortunately, this is also a security problem - just imagine some
  522. ! malicuous program to issue a string like `PREFIX: shell rm foobar'.
  523. ! Hence, we create PREFIX dynamically for each DDD session.
  524. Ddd*autoCommands: on
  525.  
  526. ! The prefix of auto-commands.
  527. ! No value means to generate a new PREFIX for each DDD session.
  528. Ddd*autoCommandPrefix:
  529.  
  530.  
  531. ! Graph Editor Defaults
  532.  
  533. ! Shall we detect aliases?  (expensive)
  534. Ddd*detectAliases:        off
  535.  
  536. ! Shall we delete aliases together with the aliased displays?
  537. Ddd*deleteAliasDisplays:    on
  538.  
  539. ! Shall we layout two-dimensional arrays as tables?
  540. Ddd*align2dArrays:        on
  541.  
  542. ! After a change in a display, shall we move adjacent displays?
  543. Ddd*bumpDisplays:        on
  544.  
  545. ! Shall we expand `VALUE <repeated N times>' to N instances of VALUE?
  546. Ddd*expandRepeatedValues:       off
  547.  
  548. ! Shall we hide displays that are out of scope?
  549. Ddd*hideInactiveDisplays:    on
  550.  
  551. ! The VSL library for displaying graph nodes.  `builtin' means the VSL
  552. ! library compiled into DDD, named `ddd.vsl'.  If you wish to use
  553. ! another VSL library, put its name here and set `vslPath' to a
  554. ! colon-separated list of directories where the VSL file and its
  555. ! includes can be found.
  556. !
  557. ! If you use the builtin library, you can use the `vslDefs' resource,
  558. ! to override (customize) certain settings.  See `colors', below.
  559. Ddd*vslLibrary:            builtin
  560. Ddd*vslPath:            .
  561.  
  562. ! What shall we use if the graph gets too large to be displayed?
  563. ! If on, an Athena panner is used (a kind of two-directional scrollbar).
  564. ! If off, two Motif scrollbars are used.
  565. !
  566. ! Although a panned graph editor is much more comfortable, we set-up Motif
  567. ! scrollbars as a default: Many OSF/Motif installations choke
  568. ! on intermixed Motif/Athena applications and we don't want to get bug
  569. ! reports that should be directed to OSF.
  570. Ddd*pannedGraphEditor:        off
  571.  
  572. ! Nodes are moved when dragged more than 4 pixels.
  573. Ddd*graph_edit.moveDelta:    4
  574.  
  575. ! The selection tile pixmap.  Usual choices are Motif built-in pixmaps.
  576. ! If this resource is left unspecified, nodes are simply inverted.
  577. ! Ddd*graph_edit.selectTile:    25_foreground
  578.  
  579. ! Do we wish opaque movement? (doesn't work yet)
  580. Ddd*graph_edit.opaqueMove:    off
  581.  
  582. ! Do we wish rubber edges when moving nodes?
  583. Ddd*graph_edit.rubberEdges:    on
  584.  
  585. ! Do we wish rubber arrows when moving nodes?
  586. Ddd*graph_edit.rubberArrows:    on
  587.  
  588. ! Do we wish a grid?
  589. Ddd*graph_edit.showGrid:    on
  590.  
  591. ! Do we wish to snap the position to the grid?
  592. Ddd*graph_edit.snapToGrid:    on
  593.  
  594. ! Do we wish to show edge hints?
  595. Ddd*graph_edit.showHints:    on
  596.  
  597. ! What kind of layout do we wish? (regular, compact)
  598. Ddd*graph_edit.layoutMode:    regular
  599.  
  600. ! Do we wish to re-layout the graph after each change?
  601. Ddd*graph_edit.autoLayout:    off
  602.  
  603. ! Width and height of the grid
  604. ! Ddd*graph_edit.gridWidth:    16
  605. ! Ddd*graph_edit.gridHeight:    16
  606. Ddd*graph_edit.GridSize:    16
  607.  
  608.  
  609. ! Source View Defaults
  610.  
  611. ! Do we wish to find complete words only?
  612. Ddd*findWordsOnly:        on
  613.  
  614. ! Do we wish case-sensitive search?
  615. Ddd*findCaseSensitive:        on
  616.  
  617. ! Do we wish to show machine code? (Makes DDD run somewhat slower)
  618. Ddd*disassemble: off
  619.  
  620. ! How many bytes of the current function should we disassemble? (0
  621. ! means disassemble entire function; default in DDD 2.2 and earlier)
  622. Ddd*maxDisassemble: 256
  623.  
  624. ! Do we wish to display glyphs? (Makes DDD run somewhat slower)
  625. Ddd*displayGlyphs: on
  626.  
  627. ! What is the maximum number of glyphs at one time?
  628. Ddd*maxGlyphs: 10
  629.  
  630. ! The time (in ms) to wait before updating glyph positions while scrolling
  631. Ddd*glyphUpdateDelay: 10
  632.  
  633. ! Shall we cache glyph images?  (Reported to fail with Motif 2.1 on XFree86)
  634. ! Ddd*cacheGlyphImages: on
  635.  
  636. ! Do we wish to display line numbers? (Default in DDD 2.1.1 and earlier)
  637. Ddd*displayLineNumbers: off
  638.  
  639. ! Do we wish to cache source files in memory?
  640. Ddd*cacheSourceFiles: on
  641.  
  642. ! Do we wish to cache machine code in memory?
  643. Ddd*cacheMachineCode: on
  644.  
  645. ! Do we wish to refer to sources using the full path name?
  646. Ddd*useSourcePath: off
  647.  
  648. ! Do we wish to save history on exit?
  649. Ddd*saveHistoryOnExit: on
  650.  
  651. ! Do we wish to show all registers, instead of only integer registers?
  652. Ddd*allRegisters: off
  653.  
  654. ! Tips (aka ballon help or bubble help) are small windows that pop up
  655. ! when moving the pointer over some item.  Instructive for DDD
  656. ! novices, but maybe annoying for DDD experts.
  657.  
  658. ! Do we want tips on buttons, telling us their meaning?
  659. Ddd*buttonTips: on
  660.  
  661. ! Do we want tips on variables in the source code, telling us their value?
  662. Ddd*valueTips: on
  663.  
  664.  
  665. ! The same info as in tips may also be shown in the status line (`docs').
  666. ! This is less annoying, but may slow down DDD a bit.
  667. ! Do we want docs on buttons, telling us their meaning?
  668. Ddd*buttonDocs: on
  669.  
  670. ! Do we want docs on variables in the source code, telling us their value?
  671. Ddd*valueDocs: on
  672.  
  673.  
  674. ! Delays for showing tips and docs
  675.  
  676. ! Time (in ms) to spend before raising a button or value tip.
  677. Ddd*buttonTipDelay: 750
  678. Ddd*valueTipDelay:  750
  679.  
  680. ! Time (in ms) to spend before showing a button or value doc.
  681. Ddd*buttonDocDelay: 100
  682. Ddd*valueDocDelay:  100
  683.  
  684. ! Time (in ms) to spend before clearing the value doc.
  685. Ddd*clearDocDelay: 1000
  686.  
  687. ! Time (in ms) to spend before clearing a button or value tip.
  688. Ddd*clearTipDelay:   50
  689.  
  690. ! Time (in ms) to spend before a push button menu pops up
  691. Ddd*pushMenuPopupTime: 400
  692.  
  693.  
  694. ! Status line
  695.  
  696. ! Should the status line be placed at the bottom?
  697. Ddd*statusAtBottom: on
  698.  
  699. ! Number of status messages to be kept in status history
  700. Ddd*statusHistorySize: 20
  701.  
  702. ! Do we want to see the debugger status (blinking while busy)?
  703. Ddd*blinkWhileBusy: on
  704.  
  705. ! Blink rate (in ms) of the busy LED - the LED showing that the inferior
  706. ! debugger is busy.  A value of 0 prevents the busy LED from blinking.
  707. Ddd*busyBlinkRate: 500
  708.  
  709.  
  710. ! Maximum lengths
  711.  
  712. ! The maximum length of a data display title (in characters)
  713. ! Longer names are replaced by `..'; `foo->bar->blue' becomes `foo->..->blue'.
  714. Ddd*maxDisplayTitleLength: 20
  715.  
  716. ! The maximum length of an expression in the source popup.
  717. Ddd*maxPopupExprLength: 20
  718.  
  719. ! The maximum length of a value tip.
  720. Ddd*maxValueTipLength: 60
  721.  
  722. ! The maximum length of a value doc.
  723. Ddd*maxValueDocLength: 80
  724.  
  725.  
  726.  
  727. ! Focus Policy
  728. ! POINTER means point-and-type, EXPLICIT means click-and-type.
  729. Ddd*keyboardFocusPolicy:    POINTER
  730.  
  731. ! X Warnings
  732. ! Do we wish to suppress X warnings?
  733. Ddd*suppressWarnings: off
  734.  
  735.  
  736. ! Grab checking.
  737.  
  738. ! Shall DDD check for grabbed (frozen) mouse pointers
  739. ! when interrupting a modal X application?
  740. Ddd*checkGrabs: on
  741.  
  742. ! The delay to check for grabs after the last GDB prompt.
  743. Ddd*checkGrabDelay: 5000
  744.  
  745. ! The delay to wait for effective action.
  746. Ddd*grabActionDelay:   10000
  747.  
  748. ! The debugger command to execute when the pointer is still grabbed.
  749. Ddd*grabAction:  cont
  750.  
  751.  
  752. ! Fonts.
  753.  
  754. ! The default font to use for labels, etc.
  755. Ddd*defaultFont:       helvetica-bold
  756.  
  757. ! The font to use for help texts.
  758. Ddd*variableWidthFont: helvetica-medium
  759.  
  760. ! The font to use for fixed-width fields, such as the source code.
  761. Ddd*fixedWidthFont:    lucidatypewriter-medium
  762.  
  763. ! The base font size; overrides the point settings as set above.
  764. Ddd*FontSize:          120
  765.  
  766.  
  767. ! A little less highlighting.
  768. Ddd*highlightThickness: 1
  769.  
  770.  
  771. ! Window sizes.
  772. Ddd*graph_edit.height:      100
  773.  
  774. Ddd*source_text_w.columns:  80
  775. Ddd*source_text_w.rows:     31
  776.  
  777. Ddd*code_text_w.columns:    80
  778. Ddd*code_text_w.rows:       4
  779.  
  780. Ddd*gdb_w.columns:          80
  781. Ddd*gdb_w.rows:            5
  782.  
  783.  
  784. ! Menus.
  785.  
  786. ! Enable tear-off pulldown menus
  787. Ddd*menubar*tearOffModel: XmTEAR_OFF_ENABLED
  788.  
  789.  
  790.  
  791. ! Splash screen
  792.  
  793. ! Whether to show the DDD splash screen
  794. Ddd*splashScreen: on
  795.  
  796. ! DDD can display its splash screen in four different ways:
  797. !
  798. !   Color (`c')  - using up to 42 shades of blue. (Nice, but costly.)
  799. !   Grey  (`g')  - using up to 42 shades of grey. (Nice on greyscale displays.)
  800. !   Grey4 (`g4') - using 4 shades of grey.        (A balanced compromise.)
  801. !   Mono  (`m')  - using only black and white.    (On monochrome displays.)
  802. !
  803. ! Use the key given in parentheses as resource value.  Default is `c'.
  804. Ddd*splashScreenColorKey: c
  805.  
  806.  
  807. ! Logos and icons
  808.  
  809. ! Whether to use multi-color icons.  Multi-color icons are not strictly
  810. ! ICCM-compliant, although supported by most window managers.  In case
  811. ! your window manager has trouble with DDD icons, set this to `off'.
  812. Ddd*colorWMIcons: on
  813.  
  814.  
  815. ! Session Defaults
  816.  
  817. ! DDD attempts to preserve breakpoint and display numbers across
  818. ! sessions.  Unfortunately, if they grow too large, startup takes
  819. ! much time due to `dummy' commands inserted in order to push up
  820. ! the debugger's breakpoint and display numbers.  Hence, we impose
  821. ! a limit: Breakpoints or displays with numbers higher than 99 get
  822. ! re-assigned new numbers from 1 on when restoring state.
  823. !
  824. ! Setting these resources to 0 ensures a re-assignment of numbers
  825. ! upon each restart.
  826. Ddd*maxBreakpointNumber: 99
  827. Ddd*maxDisplayNumber:    99
  828.  
  829.  
  830. ! Tips of the day
  831.  
  832. ! Whether to show a tip of the day upon startup
  833. Ddd*startupTips: on
  834.  
  835. ! Which tip to start with.  This is usually overridden by `~/.ddd/tips'.
  836. Ddd*startupTipCount: 1
  837.  
  838.  
  839.  
  840. ! The `endOfPreferences' pseudo-resource marks the end of
  841. ! user-settable preferences.  When saving options, DDD checks anything
  842. ! up to this resource for default values.
  843. END-OF-USER-PREFERENCES: here
  844.  
  845.  
  846. !-----------------------------------------------------------------------------
  847. ! Colors
  848. !-----------------------------------------------------------------------------
  849.  
  850. ! Rationale for color usage:
  851. !
  852. ! * grey (grey) is the default DDD background color, because 
  853. !   this works well with all possible color schemes.  It also gives 
  854. !   DDD a professional look.
  855. !
  856. ! * red4 (red4) is used for all objects associated with
  857. !   stopping the debugged program (red traffic light).  This applies
  858. !   to breakpoints (when activated) as well as everything associated
  859. !   with signal handling (interrupt button, signal arrow).
  860. !
  861. ! * DarkGreen (DarkGreen) is used for all objects associated
  862. !   with running the debugged program (green traffic light).  This applies
  863. !   to the current execution position as well as to the run button, but
  864. !   also to the `GDB busy' indicator (meaning that the program is running.)
  865. !
  866. ! * blue4 (blue4) is used for objects associated with references
  867. !   (blue is the default color for links in popular WWW browswers).  This
  868. !   applies to pointers and edges in the data display.
  869.  
  870. Ddd*foreground:               black
  871. Ddd*background:               grey
  872. Ddd*XmText.background:           grey96
  873. Ddd*XmTextField.background:       grey96
  874. Ddd*GraphEdit.background:       grey96
  875. Ddd*XmList.background:           grey96
  876. Ddd*graph_edit_panner.background:  grey
  877. Ddd*graph_edit_panner.foreground:  grey
  878. Ddd*graph_edit_panner.shadowColor: black
  879.  
  880. ! Red, green and blue buttons.
  881. Ddd*break.foreground:           red4
  882. Ddd*quit.foreground:           red4
  883. Ddd*send.foreground:           red4
  884. Ddd*run.foreground:           DarkGreen
  885. Ddd*run_again.foreground:       DarkGreen
  886. ! Ddd*dereference.foreground:       blue4
  887.  
  888. ! Highlight special dialogs
  889. Ddd*fatal_dialog*foreground:       red4
  890. Ddd*terminated_dialog*foreground:  red4
  891. Ddd*exited_dialog*foreground:      red4
  892. Ddd*no_debugger_dialog*foreground: red4
  893.  
  894. ! Glyph colors
  895. Ddd*plain_arrow.foreground:  DarkGreen
  896. Ddd*grey_arrow.foreground:   DarkGreen
  897. Ddd*signal_arrow.foreground: red4
  898.  
  899. Ddd*plain_stop.foreground:   red4
  900. Ddd*plain_cond.foreground:   red4
  901. Ddd*plain_temp.foreground:   red4
  902.  
  903. Ddd*grey_stop.foreground:    grey50
  904. Ddd*grey_cond.foreground:    grey50
  905. Ddd*grey_temp.foreground:    grey50
  906.  
  907. ! Note: In Motif 1.2 and later, colors of dragged glyphs 
  908. ! (drag_...) are copied from the drag source.
  909. Ddd*drag_arrow.foreground:   DarkGreen
  910. Ddd*drag_stop.foreground:    red4
  911. Ddd*drag_cond.foreground:    red4
  912. Ddd*drag_temp.foreground:    red4
  913.  
  914. ! Graph colors
  915. Ddd*graph_edit.nodeColor:    black
  916. Ddd*graph_edit.edgeColor:    blue4
  917. Ddd*graph_edit.selectColor:    black
  918. Ddd*graph_edit.gridColor:    black
  919. Ddd*graph_edit.frameColor:    grey50
  920. Ddd*graph_edit.outlineColor:    grey50
  921.  
  922. ! For colors of nodes in the data display, see below.
  923.  
  924.  
  925. !-----------------------------------------------------------------------------
  926. ! Bitmaps
  927. !-----------------------------------------------------------------------------
  928.  
  929. ! These bitmap names are predefined by DDD.  Feel free to use others.
  930. ! Note: if `cacheGlyphImages' is set, these bitmap names are ignored.
  931.  
  932. Ddd*plain_arrow.labelPixmap:    plain_arrow
  933. Ddd*grey_arrow.labelPixmap:    grey_arrow
  934. Ddd*temp_arrow.labelPixmap:    temp_arrow
  935. Ddd*signal_arrow.labelPixmap:    signal_arrow
  936.  
  937. Ddd*plain_stop.labelPixmap:    plain_stop
  938. Ddd*plain_cond.labelPixmap:    plain_cond
  939. Ddd*plain_temp.labelPixmap:    plain_temp
  940.  
  941. Ddd*drag_stop.labelPixmap:    drag_stop
  942. Ddd*drag_cond.labelPixmap:    drag_cond
  943. Ddd*drag_temp.labelPixmap:    drag_temp
  944.  
  945. Ddd*grey_stop.labelPixmap:    grey_stop
  946. Ddd*grey_cond.labelPixmap:    grey_cond
  947. Ddd*grey_temp.labelPixmap:    grey_temp
  948.  
  949.  
  950. !-----------------------------------------------------------------------------
  951. ! Data display fonts and colors
  952. !-----------------------------------------------------------------------------
  953.  
  954. ! The value of the `vslDefs' resource are appended to the builtin VSL library.
  955. ! The general pattern to replace a function definition FUNCTION with a new
  956. ! definition NEW_DEF is:
  957. !
  958. ! #pragma replace FUNCTION
  959. ! FUNCTION(ARGS...) = NEW_DEF;
  960. !
  961. ! The following settings may be useful:
  962. ! - color(BOX, FOREGROUND, BACKGROUND) sets the FOREGROUND and BACKGROUND
  963. !   colors of BOX.
  964. ! - stdfontfamily() is the font family used: one of
  965. !   family_times(), family_courier(), family_helvetica(), 
  966. !   family_new_century(), family_typewriter().
  967. ! - stdfontsize() is the font size in pixels.
  968. !   0 means to use stdfontpoints() instead.
  969. ! - stdfontpoints() is the font size in 1/10 points.
  970. !   0 means to use stdfontsize() instead.
  971. ! - stdfontweight() is the weight used: one of
  972. !   weight_medium(), weight_bold().
  973. !
  974. ! Here is an example which you can copy to `~/.ddd/init' and customize:
  975. !
  976. ! Ddd*vslDefs: \
  977. ! #pragma replace display_color   \n\
  978. ! #pragma replace title_color       \n\
  979. ! #pragma replace disabled_color  \n\
  980. ! #pragma replace simple_color       \n\
  981. ! #pragma replace pointer_color   \n\
  982. ! #pragma replace struct_color       \n\
  983. ! #pragma replace array_color       \n\
  984. ! #pragma replace reference_color \n\
  985. ! \n\
  986. ! display_color(box)   = color(box, "black", "white");    \n\
  987. ! title_color(box)     = color(box, "black");        \n\
  988. ! disabled_color(box)  = color(box, "white", "grey50");    \n\
  989. ! simple_color(box)    = color(box, "black");        \n\
  990. ! pointer_color(box)   = color(box, "blue4");        \n\
  991. ! struct_color(box)    = color(box, "black");        \n\
  992. ! array_color(box)     = color(box, "blue4");        \n\
  993. ! reference_color(box) = color(box, "blue4");        \n\
  994. ! \n\
  995. ! #pragma replace stdfontfamily\n\
  996. ! #pragma replace stdfontsize    \n\
  997. ! #pragma replace stdfontpoints\n\
  998. ! #pragma replace stdfontweight\n\
  999. ! stdfontfamily() = family_typewriter();\n\
  1000. ! stdfontsize()   = 0;    \n\
  1001. ! stdfontpoints() = 90;    \n\
  1002. ! stdfontweight() = weight_medium();
  1003.  
  1004. ! See the file `ddd.vsl' for further definitions to override here.
  1005.  
  1006.  
  1007. !-----------------------------------------------------------------------------
  1008. ! Keyboard translations
  1009. !-----------------------------------------------------------------------------
  1010.  
  1011. Ddd*defaultVirtualBindings: \
  1012. osfBackSpace:    <Key>BackSpace\n\
  1013. osfCancel:    <Key>Escape\n\
  1014. osfRight:     <Key>Right\n\
  1015. osfLeft:    <Key>Left\n\
  1016. osfUp:        <Key>Up\n\
  1017. osfHelp:    <Key>F1\n\
  1018. osfDown:    <Key>Down\n\
  1019. osfPageUp:    <Key>Prior\n\
  1020. osfPageDown:    <Key>Next\n\
  1021. osfBeginLine:    <Key>Home\n\
  1022. osfEndLine:    <Key>End\n
  1023.  
  1024.  
  1025. ! The Debugger Console uses an EMACS-like editing style.
  1026. ! `R7' and `R13' are generated by the developer's SUNs for `Home' and `End'
  1027. Ddd*gdb_w.baseTranslations: #override\n\
  1028. <Btn3Down>:        gdb-popup-menu()            \n\
  1029. Ctrl<Key>A:        select-all()                \n\
  1030. Ctrl<Key>B:        gdb-isearch-prev()            \n\
  1031. Ctrl<Key>C:        gdb-control(^C)            \n\
  1032. Ctrl<Key>D:        gdb-delete-or-control(^D)   \n\
  1033. Ctrl<Key>E:        gdb-end-of-line()        \n\
  1034. Ctrl<Key>F:        gdb-isearch-next()             \n\
  1035. Ctrl<Key>G:        gdb-control(^C)            \n\
  1036. <Key>Break:        gdb-interrupt()            \n\
  1037. Ctrl<Key>H:        delete-previous-character() \n\
  1038. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1039. Ctrl<Key>N:        gdb-next-history()        \n\
  1040. Ctrl<Key>P:        gdb-previous-history()        \n\
  1041. Ctrl<Key>U:         gdb-set-line("")        \n\
  1042. Ctrl<Key>V:        next-page()            \n\
  1043. Meta<Key>V:        previous-page()            \n\
  1044. Ctrl<Key>W:        delete-previous-word()        \n\
  1045. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1046. Ctrl<Key>Y:        unkill()            \n\
  1047. Ctrl<Key>backslash:    gdb-control(^\\)        \n\
  1048. Ctrl<Key>R:        gdb-isearch-prev()          \n\
  1049. Ctrl<Key>S:        gdb-isearch-next()          \n\
  1050. Ctrl<Key>T:        gdb-complete-command()        \n\
  1051. ~Shift<Key>osfPageUp:    previous-page()            \n\
  1052. ~Shift<Key>osfPageDown:    next-page()                \n\
  1053. ~Shift<Key>Prior:    previous-page()            \n\
  1054. ~Shift<Key>Next:    next-page()                \n\
  1055. Shift<Key>osfPageUp:    previous-page(extend)        \n\
  1056. Shift<Key>osfPageDown:    next-page(extend)           \n\
  1057. Shift<Key>Prior:    previous-page(extend)        \n\
  1058. Shift<Key>Next:        next-page(extend)        \n\
  1059. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1060. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1061. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n\
  1062. ~Ctrl ~Shift ~Meta<Key>Escape:        gdb-interrupt()         \n\
  1063. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()         \n\
  1064. ~Ctrl ~Shift ~Meta<Key>osfUp:        gdb-previous-history()    \n\
  1065. ~Ctrl ~Shift ~Meta<Key>osfDown:        gdb-next-history()    \n\
  1066. ~Ctrl ~Shift ~Meta<Key>osfLeft:        gdb-backward-character()\n\
  1067. ~Ctrl ~Shift ~Meta<Key>osfRight:    gdb-forward-character()    \n\
  1068. ~Ctrl ~Shift ~Meta<Key>osfBeginLine:    gdb-beginning-of-line()    \n\
  1069. ~Ctrl ~Shift ~Meta<Key>osfEndLine:    gdb-end-of-line()    \n\
  1070. ~Ctrl ~Shift ~Meta<Key>osfBeginData:    gdb-beginning-of-line()    \n\
  1071. ~Ctrl ~Shift ~Meta<Key>osfEndData:    gdb-end-of-line()    \n\
  1072. ~Ctrl ~Shift ~Meta<Key>Home:        gdb-beginning-of-line()    \n\
  1073. ~Ctrl ~Shift ~Meta<Key>End:        gdb-end-of-line()    \n\
  1074. ~Ctrl ~Shift ~Meta<Key>R7:        gdb-beginning-of-line()    \n\
  1075. ~Ctrl ~Shift ~Meta<Key>R13:        gdb-end-of-line()    \n\
  1076. ~Ctrl ~Shift ~Meta<Key>Tab:        gdb-complete-command()    \n
  1077.  
  1078.  
  1079. ! Have some of these in argument fields as well
  1080. Ddd*XmTextField.baseTranslations: \
  1081. #override\n \
  1082. Ctrl<Key>A:        select-all()                \n\
  1083. Ctrl<Key>B:        gdb-backward-character()    \n\
  1084. Ctrl<Key>D:        delete-next-character()     \n\
  1085. Ctrl<Key>E:        end-of-line()            \n\
  1086. Ctrl<Key>F:        gdb-forward-character()        \n\
  1087. Ctrl<Key>G:        gdb-control(^C)            \n\
  1088. <Key>Break:        gdb-interrupt()            \n\
  1089. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1090. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1091. Ctrl<Key>H:        delete-previous-character() \n\
  1092. Ctrl<Key>I:        self-insert()               \n\
  1093. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1094. Ctrl<Key>U:         beginning-of-line()        \
  1095.             delete-to-end-of-line()        \n\
  1096. Ctrl<Key>W:        delete-previous-word()        \n\
  1097. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1098. ~Shift <Key>R7:        beginning-of-line()        \n\
  1099. ~Shift <Key>R13:    end-of-line()            \n\
  1100. ~Shift <Key>Home:    beginning-of-line()        \n\
  1101. ~Shift <Key>End:    end-of-line()            \n\
  1102. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1103. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1104. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1105. Ctrl<Key>T:        gdb-complete-arg(print)        \n\
  1106. ~Shift <Key>Tab:    gdb-complete-tab(print)        \n
  1107.  
  1108. Ddd*XmText.baseTranslations:      \
  1109. #override\n \
  1110. Ctrl<Key>A:        select-all()                \n\
  1111. Ctrl<Key>B:        gdb-backward-character()    \n\
  1112. Ctrl<Key>D:        delete-next-character()     \n\
  1113. Ctrl<Key>E:        end-of-line()            \n\
  1114. Ctrl<Key>F:        gdb-forward-character()        \n\
  1115. Ctrl<Key>G:        gdb-control(^C)            \n\
  1116. <Key>Break:        gdb-interrupt()            \n\
  1117. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1118. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1119. Ctrl<Key>H:        delete-previous-character() \n\
  1120. Ctrl<Key>I:        self-insert()               \n\
  1121. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1122. Ctrl<Key>U:         beginning-of-line()        \
  1123.             delete-to-end-of-line()        \n\
  1124. Ctrl<Key>W:        delete-previous-word()        \n\
  1125. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1126. ~Shift <Key>R7:        beginning-of-line()        \n\
  1127. ~Shift <Key>R13:    end-of-line()            \n\
  1128. ~Shift <Key>Home:    beginning-of-line()        \n\
  1129. ~Shift <Key>End:    end-of-line()            \n\
  1130. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1131. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1132. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1133. ~Shift Ctrl<Btn4Down>,<Btn4Up>:        previous-page()\n\
  1134. ~Ctrl Shift<Btn4Down>,<Btn4Up>:        previous-line()\n\
  1135. ~Shift ~Ctrl<Btn4Down>,<Btn4Up>:    previous-line()\
  1136.                     previous-line()\
  1137.                     previous-line()\
  1138.                     previous-line()\
  1139.                     previous-line()\n\
  1140. ~Shift Ctrl<Btn5Down>,<Btn5Up>:        next-page()\n\
  1141. ~Ctrl Shift<Btn5Down>,<Btn5Up>:        next-line()\n\
  1142. ~Shift ~Ctrl<Btn5Down>,<Btn5Up>:    next-line()\
  1143.                     next-line()\
  1144.                     next-line()\
  1145.                     next-line()\
  1146.                     next-line()\n \
  1147. Ctrl<Key>J:        newline()                   \n\
  1148. Ctrl<Key>M:        newline()                   \n\
  1149. Ctrl<Key>N:        gdb-next-history()        \n\
  1150. Ctrl<Key>P:        gdb-previous-history()      \n\
  1151. Meta<Key>V:        previous-page()            \n\
  1152. Ctrl<Key>V:        next-page()            \n\
  1153. ~Shift <Key>Prior:    previous-page()            \n\
  1154. ~Shift <Key>Next:    next-page()                \n\
  1155. Shift<Key>osfPageUp:    previous-page(extend)        \n\
  1156. Shift<Key>osfPageDown:    next-page(extend)           \n\
  1157. Shift<Key>Prior:    previous-page(extend)        \n\
  1158. Shift<Key>Next:        next-page(extend)        \n \
  1159. Ctrl<Key>T:        gdb-complete-arg(print)        \n\
  1160. ~Shift <Key>Tab:    gdb-complete-tab(print)        \n
  1161.  
  1162. ! In breakpoint dialogs, use a `break' completion
  1163. Ddd*new_breakpoint_dialog*XmText.baseTranslations:   \
  1164. #override\n \
  1165. Ctrl<Key>A:        select-all()                \n\
  1166. Ctrl<Key>B:        gdb-backward-character()    \n\
  1167. Ctrl<Key>D:        delete-next-character()     \n\
  1168. Ctrl<Key>E:        end-of-line()            \n\
  1169. Ctrl<Key>F:        gdb-forward-character()        \n\
  1170. Ctrl<Key>G:        gdb-control(^C)            \n\
  1171. <Key>Break:        gdb-interrupt()            \n\
  1172. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1173. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1174. Ctrl<Key>H:        delete-previous-character() \n\
  1175. Ctrl<Key>I:        self-insert()               \n\
  1176. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1177. Ctrl<Key>U:         beginning-of-line()        \
  1178.             delete-to-end-of-line()        \n\
  1179. Ctrl<Key>W:        delete-previous-word()        \n\
  1180. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1181. ~Shift <Key>R7:        beginning-of-line()        \n\
  1182. ~Shift <Key>R13:    end-of-line()            \n\
  1183. ~Shift <Key>Home:    beginning-of-line()        \n\
  1184. ~Shift <Key>End:    end-of-line()            \n\
  1185. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1186. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1187. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1188. Ctrl<Key>T:        gdb-complete-arg(break)        \n\
  1189. ~Shift <Key>Tab:    gdb-complete-tab(break)        \n \
  1190. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1191. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1192. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1193.  
  1194. Ddd*new_breakpoint_dialog*XmTextField.baseTranslations: \
  1195. #override\n \
  1196. Ctrl<Key>A:        select-all()                \n\
  1197. Ctrl<Key>B:        gdb-backward-character()    \n\
  1198. Ctrl<Key>D:        delete-next-character()     \n\
  1199. Ctrl<Key>E:        end-of-line()            \n\
  1200. Ctrl<Key>F:        gdb-forward-character()        \n\
  1201. Ctrl<Key>G:        gdb-control(^C)            \n\
  1202. <Key>Break:        gdb-interrupt()            \n\
  1203. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1204. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1205. Ctrl<Key>H:        delete-previous-character() \n\
  1206. Ctrl<Key>I:        self-insert()               \n\
  1207. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1208. Ctrl<Key>U:         beginning-of-line()        \
  1209.             delete-to-end-of-line()        \n\
  1210. Ctrl<Key>W:        delete-previous-word()        \n\
  1211. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1212. ~Shift <Key>R7:        beginning-of-line()        \n\
  1213. ~Shift <Key>R13:    end-of-line()            \n\
  1214. ~Shift <Key>Home:    beginning-of-line()        \n\
  1215. ~Shift <Key>End:    end-of-line()            \n\
  1216. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1217. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1218. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1219. Ctrl<Key>T:        gdb-complete-arg(break)        \n\
  1220. ~Shift <Key>Tab:    gdb-complete-tab(break)        \n \
  1221. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1222. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1223. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1224.  
  1225. ! In watchpoint dialogs, use a `print' completion
  1226. Ddd*new_watchpoint_dialog*XmText.baseTranslations:   \
  1227. #override\n \
  1228. Ctrl<Key>A:        select-all()                \n\
  1229. Ctrl<Key>B:        gdb-backward-character()    \n\
  1230. Ctrl<Key>D:        delete-next-character()     \n\
  1231. Ctrl<Key>E:        end-of-line()            \n\
  1232. Ctrl<Key>F:        gdb-forward-character()        \n\
  1233. Ctrl<Key>G:        gdb-control(^C)            \n\
  1234. <Key>Break:        gdb-interrupt()            \n\
  1235. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1236. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1237. Ctrl<Key>H:        delete-previous-character() \n\
  1238. Ctrl<Key>I:        self-insert()               \n\
  1239. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1240. Ctrl<Key>U:         beginning-of-line()        \
  1241.             delete-to-end-of-line()        \n\
  1242. Ctrl<Key>W:        delete-previous-word()        \n\
  1243. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1244. ~Shift <Key>R7:        beginning-of-line()        \n\
  1245. ~Shift <Key>R13:    end-of-line()            \n\
  1246. ~Shift <Key>Home:    beginning-of-line()        \n\
  1247. ~Shift <Key>End:    end-of-line()            \n\
  1248. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1249. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1250. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1251. Ctrl<Key>T:        gdb-complete-arg(print)        \n\
  1252. ~Shift <Key>Tab:    gdb-complete-tab(print)        \n \
  1253. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1254. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1255. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1256.  
  1257. Ddd*new_watchpoint_dialog*XmTextField.baseTranslations: \
  1258. #override\n \
  1259. Ctrl<Key>A:        select-all()                \n\
  1260. Ctrl<Key>B:        gdb-backward-character()    \n\
  1261. Ctrl<Key>D:        delete-next-character()     \n\
  1262. Ctrl<Key>E:        end-of-line()            \n\
  1263. Ctrl<Key>F:        gdb-forward-character()        \n\
  1264. Ctrl<Key>G:        gdb-control(^C)            \n\
  1265. <Key>Break:        gdb-interrupt()            \n\
  1266. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1267. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1268. Ctrl<Key>H:        delete-previous-character() \n\
  1269. Ctrl<Key>I:        self-insert()               \n\
  1270. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1271. Ctrl<Key>U:         beginning-of-line()        \
  1272.             delete-to-end-of-line()        \n\
  1273. Ctrl<Key>W:        delete-previous-word()        \n\
  1274. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1275. ~Shift <Key>R7:        beginning-of-line()        \n\
  1276. ~Shift <Key>R13:    end-of-line()            \n\
  1277. ~Shift <Key>Home:    beginning-of-line()        \n\
  1278. ~Shift <Key>End:    end-of-line()            \n\
  1279. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1280. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1281. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1282. Ctrl<Key>T:        gdb-complete-arg(print)        \n\
  1283. ~Shift <Key>Tab:    gdb-complete-tab(print)        \n \
  1284. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1285. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1286. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1287.  
  1288.  
  1289. ! In file dialogs, use a `file' completion
  1290. Ddd*XmFileSelectionBox*XmText.baseTranslations:      \
  1291. #override\n \
  1292. Ctrl<Key>A:        select-all()                \n\
  1293. Ctrl<Key>B:        gdb-backward-character()    \n\
  1294. Ctrl<Key>D:        delete-next-character()     \n\
  1295. Ctrl<Key>E:        end-of-line()            \n\
  1296. Ctrl<Key>F:        gdb-forward-character()        \n\
  1297. Ctrl<Key>G:        gdb-control(^C)            \n\
  1298. <Key>Break:        gdb-interrupt()            \n\
  1299. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1300. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1301. Ctrl<Key>H:        delete-previous-character() \n\
  1302. Ctrl<Key>I:        self-insert()               \n\
  1303. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1304. Ctrl<Key>U:         beginning-of-line()        \
  1305.             delete-to-end-of-line()        \n\
  1306. Ctrl<Key>W:        delete-previous-word()        \n\
  1307. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1308. ~Shift <Key>R7:        beginning-of-line()        \n\
  1309. ~Shift <Key>R13:    end-of-line()            \n\
  1310. ~Shift <Key>Home:    beginning-of-line()        \n\
  1311. ~Shift <Key>End:    end-of-line()            \n\
  1312. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1313. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1314. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1315. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1316. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1317. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1318. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1319. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1320.  
  1321. Ddd*XmFileSelectionBox*XmTextField.baseTranslations: \
  1322. #override\n \
  1323. Ctrl<Key>A:        select-all()                \n\
  1324. Ctrl<Key>B:        gdb-backward-character()    \n\
  1325. Ctrl<Key>D:        delete-next-character()     \n\
  1326. Ctrl<Key>E:        end-of-line()            \n\
  1327. Ctrl<Key>F:        gdb-forward-character()        \n\
  1328. Ctrl<Key>G:        gdb-control(^C)            \n\
  1329. <Key>Break:        gdb-interrupt()            \n\
  1330. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1331. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1332. Ctrl<Key>H:        delete-previous-character() \n\
  1333. Ctrl<Key>I:        self-insert()               \n\
  1334. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1335. Ctrl<Key>U:         beginning-of-line()        \
  1336.             delete-to-end-of-line()        \n\
  1337. Ctrl<Key>W:        delete-previous-word()        \n\
  1338. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1339. ~Shift <Key>R7:        beginning-of-line()        \n\
  1340. ~Shift <Key>R13:    end-of-line()            \n\
  1341. ~Shift <Key>Home:    beginning-of-line()        \n\
  1342. ~Shift <Key>End:    end-of-line()            \n\
  1343. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1344. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1345. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1346. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1347. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1348. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1349. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1350. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1351.  
  1352.  
  1353. ! In `print', `make', and `cd' dialogs, use a `file' completion, too.
  1354. Ddd*print_popup*XmText.baseTranslations:          \
  1355. #override\n \
  1356. Ctrl<Key>A:        select-all()                \n\
  1357. Ctrl<Key>B:        gdb-backward-character()    \n\
  1358. Ctrl<Key>D:        delete-next-character()     \n\
  1359. Ctrl<Key>E:        end-of-line()            \n\
  1360. Ctrl<Key>F:        gdb-forward-character()        \n\
  1361. Ctrl<Key>G:        gdb-control(^C)            \n\
  1362. <Key>Break:        gdb-interrupt()            \n\
  1363. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1364. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1365. Ctrl<Key>H:        delete-previous-character() \n\
  1366. Ctrl<Key>I:        self-insert()               \n\
  1367. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1368. Ctrl<Key>U:         beginning-of-line()        \
  1369.             delete-to-end-of-line()        \n\
  1370. Ctrl<Key>W:        delete-previous-word()        \n\
  1371. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1372. ~Shift <Key>R7:        beginning-of-line()        \n\
  1373. ~Shift <Key>R13:    end-of-line()            \n\
  1374. ~Shift <Key>Home:    beginning-of-line()        \n\
  1375. ~Shift <Key>End:    end-of-line()            \n\
  1376. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1377. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1378. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1379. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1380. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1381. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1382. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1383. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1384.  
  1385. Ddd*print_popup*XmTextField.baseTranslations:        \
  1386. #override\n \
  1387. Ctrl<Key>A:        select-all()                \n\
  1388. Ctrl<Key>B:        gdb-backward-character()    \n\
  1389. Ctrl<Key>D:        delete-next-character()     \n\
  1390. Ctrl<Key>E:        end-of-line()            \n\
  1391. Ctrl<Key>F:        gdb-forward-character()        \n\
  1392. Ctrl<Key>G:        gdb-control(^C)            \n\
  1393. <Key>Break:        gdb-interrupt()            \n\
  1394. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1395. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1396. Ctrl<Key>H:        delete-previous-character() \n\
  1397. Ctrl<Key>I:        self-insert()               \n\
  1398. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1399. Ctrl<Key>U:         beginning-of-line()        \
  1400.             delete-to-end-of-line()        \n\
  1401. Ctrl<Key>W:        delete-previous-word()        \n\
  1402. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1403. ~Shift <Key>R7:        beginning-of-line()        \n\
  1404. ~Shift <Key>R13:    end-of-line()            \n\
  1405. ~Shift <Key>Home:    beginning-of-line()        \n\
  1406. ~Shift <Key>End:    end-of-line()            \n\
  1407. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1408. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1409. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1410. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1411. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1412. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1413. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1414. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1415.  
  1416. Ddd*make_dialog*XmText.baseTranslations:          \
  1417. #override\n \
  1418. Ctrl<Key>A:        select-all()                \n\
  1419. Ctrl<Key>B:        gdb-backward-character()    \n\
  1420. Ctrl<Key>D:        delete-next-character()     \n\
  1421. Ctrl<Key>E:        end-of-line()            \n\
  1422. Ctrl<Key>F:        gdb-forward-character()        \n\
  1423. Ctrl<Key>G:        gdb-control(^C)            \n\
  1424. <Key>Break:        gdb-interrupt()            \n\
  1425. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1426. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1427. Ctrl<Key>H:        delete-previous-character() \n\
  1428. Ctrl<Key>I:        self-insert()               \n\
  1429. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1430. Ctrl<Key>U:         beginning-of-line()        \
  1431.             delete-to-end-of-line()        \n\
  1432. Ctrl<Key>W:        delete-previous-word()        \n\
  1433. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1434. ~Shift <Key>R7:        beginning-of-line()        \n\
  1435. ~Shift <Key>R13:    end-of-line()            \n\
  1436. ~Shift <Key>Home:    beginning-of-line()        \n\
  1437. ~Shift <Key>End:    end-of-line()            \n\
  1438. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1439. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1440. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1441. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1442. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1443. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1444. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1445. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1446.  
  1447. Ddd*make_dialog*XmTextField.baseTranslations:        \
  1448. #override\n \
  1449. Ctrl<Key>A:        select-all()                \n\
  1450. Ctrl<Key>B:        gdb-backward-character()    \n\
  1451. Ctrl<Key>D:        delete-next-character()     \n\
  1452. Ctrl<Key>E:        end-of-line()            \n\
  1453. Ctrl<Key>F:        gdb-forward-character()        \n\
  1454. Ctrl<Key>G:        gdb-control(^C)            \n\
  1455. <Key>Break:        gdb-interrupt()            \n\
  1456. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1457. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1458. Ctrl<Key>H:        delete-previous-character() \n\
  1459. Ctrl<Key>I:        self-insert()               \n\
  1460. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1461. Ctrl<Key>U:         beginning-of-line()        \
  1462.             delete-to-end-of-line()        \n\
  1463. Ctrl<Key>W:        delete-previous-word()        \n\
  1464. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1465. ~Shift <Key>R7:        beginning-of-line()        \n\
  1466. ~Shift <Key>R13:    end-of-line()            \n\
  1467. ~Shift <Key>Home:    beginning-of-line()        \n\
  1468. ~Shift <Key>End:    end-of-line()            \n\
  1469. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1470. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1471. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1472. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1473. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1474. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1475. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1476. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1477.  
  1478. Ddd*cd_dialog*XmText.baseTranslations:          \
  1479. #override\n \
  1480. Ctrl<Key>A:        select-all()                \n\
  1481. Ctrl<Key>B:        gdb-backward-character()    \n\
  1482. Ctrl<Key>D:        delete-next-character()     \n\
  1483. Ctrl<Key>E:        end-of-line()            \n\
  1484. Ctrl<Key>F:        gdb-forward-character()        \n\
  1485. Ctrl<Key>G:        gdb-control(^C)            \n\
  1486. <Key>Break:        gdb-interrupt()            \n\
  1487. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1488. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1489. Ctrl<Key>H:        delete-previous-character() \n\
  1490. Ctrl<Key>I:        self-insert()               \n\
  1491. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1492. Ctrl<Key>U:         beginning-of-line()        \
  1493.             delete-to-end-of-line()        \n\
  1494. Ctrl<Key>W:        delete-previous-word()        \n\
  1495. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1496. ~Shift <Key>R7:        beginning-of-line()        \n\
  1497. ~Shift <Key>R13:    end-of-line()            \n\
  1498. ~Shift <Key>Home:    beginning-of-line()        \n\
  1499. ~Shift <Key>End:    end-of-line()            \n\
  1500. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1501. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1502. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1503. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1504. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1505. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1506. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1507. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1508.  
  1509. Ddd*cd_dialog*XmTextField.baseTranslations:          \
  1510. #override\n \
  1511. Ctrl<Key>A:        select-all()                \n\
  1512. Ctrl<Key>B:        gdb-backward-character()    \n\
  1513. Ctrl<Key>D:        delete-next-character()     \n\
  1514. Ctrl<Key>E:        end-of-line()            \n\
  1515. Ctrl<Key>F:        gdb-forward-character()        \n\
  1516. Ctrl<Key>G:        gdb-control(^C)            \n\
  1517. <Key>Break:        gdb-interrupt()            \n\
  1518. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1519. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1520. Ctrl<Key>H:        delete-previous-character() \n\
  1521. Ctrl<Key>I:        self-insert()               \n\
  1522. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1523. Ctrl<Key>U:         beginning-of-line()        \
  1524.             delete-to-end-of-line()        \n\
  1525. Ctrl<Key>W:        delete-previous-word()        \n\
  1526. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1527. ~Shift <Key>R7:        beginning-of-line()        \n\
  1528. ~Shift <Key>R13:    end-of-line()            \n\
  1529. ~Shift <Key>Home:    beginning-of-line()        \n\
  1530. ~Shift <Key>End:    end-of-line()            \n\
  1531. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1532. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1533. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1534. Ctrl<Key>T:        gdb-complete-arg(file)        \n\
  1535. ~Shift <Key>Tab:    gdb-complete-tab(file)        \n \
  1536. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1537. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1538. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1539.  
  1540. ! In selection boxes, use `shell' completion.
  1541. Ddd*XmSelectionBox*XmText.baseTranslations:      \
  1542. #override\n \
  1543. Ctrl<Key>A:        select-all()                \n\
  1544. Ctrl<Key>B:        gdb-backward-character()    \n\
  1545. Ctrl<Key>D:        delete-next-character()     \n\
  1546. Ctrl<Key>E:        end-of-line()            \n\
  1547. Ctrl<Key>F:        gdb-forward-character()        \n\
  1548. Ctrl<Key>G:        gdb-control(^C)            \n\
  1549. <Key>Break:        gdb-interrupt()            \n\
  1550. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1551. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1552. Ctrl<Key>H:        delete-previous-character() \n\
  1553. Ctrl<Key>I:        self-insert()               \n\
  1554. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1555. Ctrl<Key>U:         beginning-of-line()        \
  1556.             delete-to-end-of-line()        \n\
  1557. Ctrl<Key>W:        delete-previous-word()        \n\
  1558. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1559. ~Shift <Key>R7:        beginning-of-line()        \n\
  1560. ~Shift <Key>R13:    end-of-line()            \n\
  1561. ~Shift <Key>Home:    beginning-of-line()        \n\
  1562. ~Shift <Key>End:    end-of-line()            \n\
  1563. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1564. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1565. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1566. Ctrl<Key>T:        gdb-complete-arg(shell)        \n\
  1567. ~Shift <Key>Tab:    gdb-complete-tab(shell)        \n \
  1568. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1569. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1570. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1571. Ddd*XmSelectionBox*XmTextField.baseTranslations:     \
  1572. #override\n \
  1573. Ctrl<Key>A:        select-all()                \n\
  1574. Ctrl<Key>B:        gdb-backward-character()    \n\
  1575. Ctrl<Key>D:        delete-next-character()     \n\
  1576. Ctrl<Key>E:        end-of-line()            \n\
  1577. Ctrl<Key>F:        gdb-forward-character()        \n\
  1578. Ctrl<Key>G:        gdb-control(^C)            \n\
  1579. <Key>Break:        gdb-interrupt()            \n\
  1580. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1581. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1582. Ctrl<Key>H:        delete-previous-character() \n\
  1583. Ctrl<Key>I:        self-insert()               \n\
  1584. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1585. Ctrl<Key>U:         beginning-of-line()        \
  1586.             delete-to-end-of-line()        \n\
  1587. Ctrl<Key>W:        delete-previous-word()        \n\
  1588. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1589. ~Shift <Key>R7:        beginning-of-line()        \n\
  1590. ~Shift <Key>R13:    end-of-line()            \n\
  1591. ~Shift <Key>Home:    beginning-of-line()        \n\
  1592. ~Shift <Key>End:    end-of-line()            \n\
  1593. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1594. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1595. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1596. Ctrl<Key>T:        gdb-complete-arg(shell)        \n\
  1597. ~Shift <Key>Tab:    gdb-complete-tab(shell)        \n \
  1598. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1599. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1600. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1601. Ddd*XmDialogShell*XmText.baseTranslations:      \
  1602. #override\n \
  1603. Ctrl<Key>A:        select-all()                \n\
  1604. Ctrl<Key>B:        gdb-backward-character()    \n\
  1605. Ctrl<Key>D:        delete-next-character()     \n\
  1606. Ctrl<Key>E:        end-of-line()            \n\
  1607. Ctrl<Key>F:        gdb-forward-character()        \n\
  1608. Ctrl<Key>G:        gdb-control(^C)            \n\
  1609. <Key>Break:        gdb-interrupt()            \n\
  1610. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1611. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1612. Ctrl<Key>H:        delete-previous-character() \n\
  1613. Ctrl<Key>I:        self-insert()               \n\
  1614. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1615. Ctrl<Key>U:         beginning-of-line()        \
  1616.             delete-to-end-of-line()        \n\
  1617. Ctrl<Key>W:        delete-previous-word()        \n\
  1618. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1619. ~Shift <Key>R7:        beginning-of-line()        \n\
  1620. ~Shift <Key>R13:    end-of-line()            \n\
  1621. ~Shift <Key>Home:    beginning-of-line()        \n\
  1622. ~Shift <Key>End:    end-of-line()            \n\
  1623. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1624. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1625. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1626. Ctrl<Key>T:        gdb-complete-arg(shell)        \n\
  1627. ~Shift <Key>Tab:    gdb-complete-tab(shell)        \n \
  1628. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1629. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1630. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1631. Ddd*XmDialogShell*XmTextField.baseTranslations:     \
  1632. #override\n \
  1633. Ctrl<Key>A:        select-all()                \n\
  1634. Ctrl<Key>B:        gdb-backward-character()    \n\
  1635. Ctrl<Key>D:        delete-next-character()     \n\
  1636. Ctrl<Key>E:        end-of-line()            \n\
  1637. Ctrl<Key>F:        gdb-forward-character()        \n\
  1638. Ctrl<Key>G:        gdb-control(^C)            \n\
  1639. <Key>Break:        gdb-interrupt()            \n\
  1640. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1641. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1642. Ctrl<Key>H:        delete-previous-character() \n\
  1643. Ctrl<Key>I:        self-insert()               \n\
  1644. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1645. Ctrl<Key>U:         beginning-of-line()        \
  1646.             delete-to-end-of-line()        \n\
  1647. Ctrl<Key>W:        delete-previous-word()        \n\
  1648. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1649. ~Shift <Key>R7:        beginning-of-line()        \n\
  1650. ~Shift <Key>R13:    end-of-line()            \n\
  1651. ~Shift <Key>Home:    beginning-of-line()        \n\
  1652. ~Shift <Key>End:    end-of-line()            \n\
  1653. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1654. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1655. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1656. Ctrl<Key>T:        gdb-complete-arg(shell)        \n\
  1657. ~Shift <Key>Tab:    gdb-complete-tab(shell)        \n \
  1658. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1659. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1660. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1661.  
  1662. ! In the button editor, we have no completion.
  1663. Ddd*edit_buttons*XmText.baseTranslations:           \
  1664. #override\n \
  1665. Ctrl<Key>A:        select-all()                \n\
  1666. Ctrl<Key>B:        gdb-backward-character()    \n\
  1667. Ctrl<Key>D:        delete-next-character()     \n\
  1668. Ctrl<Key>E:        end-of-line()            \n\
  1669. Ctrl<Key>F:        gdb-forward-character()        \n\
  1670. Ctrl<Key>G:        gdb-control(^C)            \n\
  1671. <Key>Break:        gdb-interrupt()            \n\
  1672. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1673. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1674. Ctrl<Key>H:        delete-previous-character() \n\
  1675. Ctrl<Key>I:        self-insert()               \n\
  1676. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1677. Ctrl<Key>U:         beginning-of-line()        \
  1678.             delete-to-end-of-line()        \n\
  1679. Ctrl<Key>W:        delete-previous-word()        \n\
  1680. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1681. ~Shift <Key>R7:        beginning-of-line()        \n\
  1682. ~Shift <Key>R13:    end-of-line()            \n\
  1683. ~Shift <Key>Home:    beginning-of-line()        \n\
  1684. ~Shift <Key>End:    end-of-line()            \n\
  1685. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1686. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1687. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1688. ~Shift Ctrl<Btn4Down>,<Btn4Up>:        previous-page()\n\
  1689. ~Ctrl Shift<Btn4Down>,<Btn4Up>:        previous-line()\n\
  1690. ~Shift ~Ctrl<Btn4Down>,<Btn4Up>:    previous-line()\
  1691.                     previous-line()\
  1692.                     previous-line()\
  1693.                     previous-line()\
  1694.                     previous-line()\n\
  1695. ~Shift Ctrl<Btn5Down>,<Btn5Up>:        next-page()\n\
  1696. ~Ctrl Shift<Btn5Down>,<Btn5Up>:        next-line()\n\
  1697. ~Shift ~Ctrl<Btn5Down>,<Btn5Up>:    next-line()\
  1698.                     next-line()\
  1699.                     next-line()\
  1700.                     next-line()\
  1701.                     next-line()\n \
  1702. Ctrl<Key>J:        newline()                   \n\
  1703. Ctrl<Key>M:        newline()                   \n\
  1704. Ctrl<Key>N:        gdb-next-history()        \n\
  1705. Ctrl<Key>P:        gdb-previous-history()      \n\
  1706. Meta<Key>V:        previous-page()            \n\
  1707. Ctrl<Key>V:        next-page()            \n\
  1708. ~Shift <Key>Prior:    previous-page()            \n\
  1709. ~Shift <Key>Next:    next-page()                \n\
  1710. Shift<Key>osfPageUp:    previous-page(extend)        \n\
  1711. Shift<Key>osfPageDown:    next-page(extend)           \n\
  1712. Shift<Key>Prior:    previous-page(extend)        \n\
  1713. Shift<Key>Next:        next-page(extend)        \n \
  1714. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1715. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1716. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1717.  
  1718. ! In command definitions, we have command completion.
  1719. Ddd*breakpoint_properties*XmTextField.baseTranslations: \
  1720. #override\n \
  1721. Ctrl<Key>A:        select-all()                \n\
  1722. Ctrl<Key>B:        gdb-backward-character()    \n\
  1723. Ctrl<Key>D:        delete-next-character()     \n\
  1724. Ctrl<Key>E:        end-of-line()            \n\
  1725. Ctrl<Key>F:        gdb-forward-character()        \n\
  1726. Ctrl<Key>G:        gdb-control(^C)            \n\
  1727. <Key>Break:        gdb-interrupt()            \n\
  1728. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1729. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1730. Ctrl<Key>H:        delete-previous-character() \n\
  1731. Ctrl<Key>I:        self-insert()               \n\
  1732. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1733. Ctrl<Key>U:         beginning-of-line()        \
  1734.             delete-to-end-of-line()        \n\
  1735. Ctrl<Key>W:        delete-previous-word()        \n\
  1736. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1737. ~Shift <Key>R7:        beginning-of-line()        \n\
  1738. ~Shift <Key>R13:    end-of-line()            \n\
  1739. ~Shift <Key>Home:    beginning-of-line()        \n\
  1740. ~Shift <Key>End:    end-of-line()            \n\
  1741. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1742. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1743. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1744. Ctrl<Key>T:        gdb-complete-arg(print)        \n\
  1745. ~Shift <Key>Tab:    gdb-complete-tab(print)        \n \
  1746. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1747. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1748. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1749. Ddd*breakpoint_properties*XmText.baseTranslations:      \
  1750. #override\n \
  1751. Ctrl<Key>A:        select-all()                \n\
  1752. Ctrl<Key>B:        gdb-backward-character()    \n\
  1753. Ctrl<Key>D:        delete-next-character()     \n\
  1754. Ctrl<Key>E:        end-of-line()            \n\
  1755. Ctrl<Key>F:        gdb-forward-character()        \n\
  1756. Ctrl<Key>G:        gdb-control(^C)            \n\
  1757. <Key>Break:        gdb-interrupt()            \n\
  1758. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1759. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1760. Ctrl<Key>H:        delete-previous-character() \n\
  1761. Ctrl<Key>I:        self-insert()               \n\
  1762. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1763. Ctrl<Key>U:         beginning-of-line()        \
  1764.             delete-to-end-of-line()        \n\
  1765. Ctrl<Key>W:        delete-previous-word()        \n\
  1766. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1767. ~Shift <Key>R7:        beginning-of-line()        \n\
  1768. ~Shift <Key>R13:    end-of-line()            \n\
  1769. ~Shift <Key>Home:    beginning-of-line()        \n\
  1770. ~Shift <Key>End:    end-of-line()            \n\
  1771. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1772. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1773. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1774. Ctrl<Key>T:        gdb-complete-arg(" ")        \n\
  1775. ~Shift <Key>Tab:    gdb-complete-tab(" ")        \n \
  1776. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1777. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1778. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1779.  
  1780. Ddd*define_command*XmTextField.baseTranslations:        \
  1781. #override\n \
  1782. Ctrl<Key>A:        select-all()                \n\
  1783. Ctrl<Key>B:        gdb-backward-character()    \n\
  1784. Ctrl<Key>D:        delete-next-character()     \n\
  1785. Ctrl<Key>E:        end-of-line()            \n\
  1786. Ctrl<Key>F:        gdb-forward-character()        \n\
  1787. Ctrl<Key>G:        gdb-control(^C)            \n\
  1788. <Key>Break:        gdb-interrupt()            \n\
  1789. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1790. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1791. Ctrl<Key>H:        delete-previous-character() \n\
  1792. Ctrl<Key>I:        self-insert()               \n\
  1793. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1794. Ctrl<Key>U:         beginning-of-line()        \
  1795.             delete-to-end-of-line()        \n\
  1796. Ctrl<Key>W:        delete-previous-word()        \n\
  1797. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1798. ~Shift <Key>R7:        beginning-of-line()        \n\
  1799. ~Shift <Key>R13:    end-of-line()            \n\
  1800. ~Shift <Key>Home:    beginning-of-line()        \n\
  1801. ~Shift <Key>End:    end-of-line()            \n\
  1802. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1803. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1804. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1805. Ctrl<Key>T:        gdb-complete-arg(" ")        \n\
  1806. ~Shift <Key>Tab:    gdb-complete-tab(" ")        \n \
  1807. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1808. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1809. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1810. Ddd*define_command*XmText.baseTranslations:             \
  1811. #override\n \
  1812. Ctrl<Key>A:        select-all()                \n\
  1813. Ctrl<Key>B:        gdb-backward-character()    \n\
  1814. Ctrl<Key>D:        delete-next-character()     \n\
  1815. Ctrl<Key>E:        end-of-line()            \n\
  1816. Ctrl<Key>F:        gdb-forward-character()        \n\
  1817. Ctrl<Key>G:        gdb-control(^C)            \n\
  1818. <Key>Break:        gdb-interrupt()            \n\
  1819. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  1820. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  1821. Ctrl<Key>H:        delete-previous-character() \n\
  1822. Ctrl<Key>I:        self-insert()               \n\
  1823. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  1824. Ctrl<Key>U:         beginning-of-line()        \
  1825.             delete-to-end-of-line()        \n\
  1826. Ctrl<Key>W:        delete-previous-word()        \n\
  1827. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  1828. ~Shift <Key>R7:        beginning-of-line()        \n\
  1829. ~Shift <Key>R13:    end-of-line()            \n\
  1830. ~Shift <Key>Home:    beginning-of-line()        \n\
  1831. ~Shift <Key>End:    end-of-line()            \n\
  1832. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1833. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1834. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  1835. Ctrl<Key>T:        gdb-complete-arg(" ")        \n\
  1836. ~Shift <Key>Tab:    gdb-complete-tab(" ")        \n \
  1837. ~Shift Ctrl<Key>X:      cut-clipboard()             \n\
  1838. ~Shift Ctrl<Key>C:      copy-clipboard()            \n\
  1839. ~Shift Ctrl<Key>V:      paste-clipboard()           \n
  1840.  
  1841.  
  1842.  
  1843. ! The source window is especially tuned for word selection.
  1844.  
  1845. ! Have all characters be processed by the GDB console.
  1846. ! If you know of a better way than by using such huge translation tables,
  1847. ! please let me know.
  1848.  
  1849. Ddd*source_text_w.baseTranslations: \
  1850. #override\n \
  1851. <Btn3Down>:        source-popup-menu()         \n\
  1852. ~Ctrl ~Shift<Btn1Down>:    source-start-select-word()  \n\
  1853. ~Ctrl ~Shift<Btn1Up>:    source-end-select-word() source-double-click() \n\
  1854. Ctrl<Key>A:        select-all()                \n\
  1855. Ctrl<Key>B:        gdb-isearch-prev()            \n\
  1856. Ctrl<Key>C:             gdb-control(^C)             \n\
  1857. Ctrl<Key>E:        end-of-line()            \n\
  1858. Ctrl<Key>F:        gdb-isearch-next()        \n\
  1859. Ctrl<Key>G:             gdb-control(^C)             \n\
  1860. Ctrl<Key>N:        gdb-next-history()        \n\
  1861. Ctrl<Key>P:        gdb-previous-history()      \n\
  1862. Ctrl<Key>R:        gdb-isearch-prev()          \n\
  1863. Ctrl<Key>S:        gdb-isearch-next()          \n\
  1864. Ctrl<Key>V:        next-page()            \
  1865.             source-update-glyphs()        \n\
  1866. Meta<Key>V:        previous-page()            \
  1867.             source-update-glyphs()        \n\
  1868. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  1869. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  1870. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n\
  1871. ~Shift <Key>R7:        beginning-of-line()        \n\
  1872. ~Shift <Key>R13:    end-of-line()            \n\
  1873. ~Shift <Key>Tab:    PrimitiveNextTabGroup()        \n\
  1874. ~Shift <Key>osfPageUp:    previous-page()            \
  1875.             source-update-glyphs()        \n\
  1876. ~Shift <Key>osfPageDown: next-page()            \
  1877.             source-update-glyphs()        \n\
  1878. Shift<Key>osfPageUp:    previous-page(extend)        \
  1879.             source-update-glyphs()        \n\
  1880. Shift<Key>osfPageDown:    next-page(extend)        \
  1881.             source-update-glyphs()        \n\
  1882. ~Shift <Key>Prior:    previous-page()            \
  1883.             source-update-glyphs()        \n\
  1884. ~Shift <Key>Next:    next-page()            \
  1885.             source-update-glyphs()        \n\
  1886. Shift<Key>Prior:    previous-page(extend)        \
  1887.             source-update-glyphs()        \n\
  1888. Shift<Key>Next:        next-page(extend)        \
  1889.             source-update-glyphs()        \n\
  1890. ~Shift <Key>Home:    beginning-of-line()        \n\
  1891. ~Shift <Key>End:    end-of-line()            \n \
  1892. ~Meta<Key>osfBackSpace:             gdb-process(delete-previous-character)\n\
  1893. ~Ctrl ~Meta<Key>BackSpace:         gdb-process(delete-previous-character)\n\
  1894. ~Meta<Key>Tab:                 gdb-process(process-tab)\n\
  1895. ~Ctrl ~Meta<Key>Return:             gdb-process(process-return)\n\
  1896. ~Ctrl ~Meta<Key>Linefeed:         gdb-process(process-return)\n\
  1897. ~Ctrl ~Meta<Key>Escape:             gdb-interrupt()\n\
  1898. ~Meta<Key>osfCancel:             gdb-interrupt()\n\
  1899. ~Meta<Key>Delete:             gdb-process(delete-next-character)\n\
  1900. ~Ctrl ~Meta<Key>space:             gdb-process()\n\
  1901. ~Ctrl ~Meta<Key>exclam:             gdb-process()\n\
  1902. ~Ctrl ~Meta<Key>quotedbl:         gdb-process()\n\
  1903. ~Ctrl ~Meta<Key>numbersign:         gdb-process()\n\
  1904. ~Ctrl ~Meta<Key>dollar:             gdb-process()\n\
  1905. ~Ctrl ~Meta<Key>percent:         gdb-process()\n\
  1906. ~Ctrl ~Meta<Key>ampersand:         gdb-process()\n\
  1907. ~Ctrl ~Meta<Key>apostrophe:         gdb-process()\n\
  1908. ~Ctrl ~Meta<Key>parenleft:         gdb-process()\n\
  1909. ~Ctrl ~Meta<Key>parenright:         gdb-process()\n\
  1910. ~Ctrl ~Meta<Key>asterisk:         gdb-process()\n\
  1911. ~Ctrl ~Meta<Key>plus:             gdb-process()\n\
  1912. ~Ctrl ~Meta<Key>comma:             gdb-process()\n\
  1913. ~Ctrl ~Meta<Key>minus:             gdb-process()\n\
  1914. ~Ctrl ~Meta<Key>period:             gdb-process()\n\
  1915. ~Ctrl ~Meta<Key>slash:             gdb-process()\n\
  1916. ~Ctrl ~Meta<Key>0:             gdb-process()\n\
  1917. ~Ctrl ~Meta<Key>1:             gdb-process()\n\
  1918. ~Ctrl ~Meta<Key>2:             gdb-process()\n\
  1919. ~Ctrl ~Meta<Key>3:             gdb-process()\n\
  1920. ~Ctrl ~Meta<Key>4:             gdb-process()\n\
  1921. ~Ctrl ~Meta<Key>5:             gdb-process()\n\
  1922. ~Ctrl ~Meta<Key>6:             gdb-process()\n\
  1923. ~Ctrl ~Meta<Key>7:             gdb-process()\n\
  1924. ~Ctrl ~Meta<Key>8:             gdb-process()\n\
  1925. ~Ctrl ~Meta<Key>9:             gdb-process()\n\
  1926. ~Ctrl ~Meta<Key>colon:             gdb-process()\n\
  1927. ~Ctrl ~Meta<Key>semicolon:         gdb-process()\n\
  1928. ~Ctrl ~Meta<Key>less:             gdb-process()\n\
  1929. ~Ctrl ~Meta<Key>equal:             gdb-process()\n\
  1930. ~Ctrl ~Meta<Key>greater:         gdb-process()\n\
  1931. ~Ctrl ~Meta<Key>question:         gdb-process()\n\
  1932. ~Ctrl ~Meta<Key>at:             gdb-process()\n\
  1933. ~Ctrl ~Meta<Key>A:             gdb-process()\n\
  1934. ~Ctrl ~Meta<Key>B:             gdb-process()\n\
  1935. ~Ctrl ~Meta<Key>C:             gdb-process()\n\
  1936. ~Ctrl ~Meta<Key>D:             gdb-process()\n\
  1937. ~Ctrl ~Meta<Key>E:             gdb-process()\n\
  1938. ~Ctrl ~Meta<Key>F:             gdb-process()\n\
  1939. ~Ctrl ~Meta<Key>G:             gdb-process()\n\
  1940. ~Ctrl ~Meta<Key>H:             gdb-process()\n\
  1941. ~Ctrl ~Meta<Key>I:             gdb-process()\n\
  1942. ~Ctrl ~Meta<Key>J:             gdb-process()\n\
  1943. ~Ctrl ~Meta<Key>K:             gdb-process()\n\
  1944. ~Ctrl ~Meta<Key>L:             gdb-process()\n\
  1945. ~Ctrl ~Meta<Key>M:             gdb-process()\n\
  1946. ~Ctrl ~Meta<Key>N:             gdb-process()\n\
  1947. ~Ctrl ~Meta<Key>O:             gdb-process()\n\
  1948. ~Ctrl ~Meta<Key>P:             gdb-process()\n\
  1949. ~Ctrl ~Meta<Key>Q:             gdb-process()\n\
  1950. ~Ctrl ~Meta<Key>R:             gdb-process()\n\
  1951. ~Ctrl ~Meta<Key>S:             gdb-process()\n\
  1952. ~Ctrl ~Meta<Key>T:             gdb-process()\n\
  1953. ~Ctrl ~Meta<Key>U:             gdb-process()\n\
  1954. ~Ctrl ~Meta<Key>V:             gdb-process()\n\
  1955. ~Ctrl ~Meta<Key>W:             gdb-process()\n\
  1956. ~Ctrl ~Meta<Key>X:             gdb-process()\n\
  1957. ~Ctrl ~Meta<Key>Y:             gdb-process()\n\
  1958. ~Ctrl ~Meta<Key>Z:             gdb-process()\n\
  1959. ~Ctrl ~Meta<Key>bracketleft:         gdb-process()\n\
  1960. ~Ctrl ~Meta<Key>backslash:         gdb-process()\n\
  1961. ~Ctrl ~Meta<Key>bracketright:         gdb-process()\n\
  1962. ~Ctrl ~Meta<Key>asciicircum:         gdb-process()\n\
  1963. ~Ctrl ~Meta<Key>underscore:         gdb-process()\n\
  1964. ~Ctrl ~Meta<Key>grave:             gdb-process()\n\
  1965. ~Ctrl ~Meta<Key>a:             gdb-process()\n\
  1966. ~Ctrl ~Meta<Key>b:             gdb-process()\n\
  1967. ~Ctrl ~Meta<Key>c:             gdb-process()\n\
  1968. ~Ctrl ~Meta<Key>d:             gdb-process()\n\
  1969. ~Ctrl ~Meta<Key>e:             gdb-process()\n\
  1970. ~Ctrl ~Meta<Key>f:             gdb-process()\n\
  1971. ~Ctrl ~Meta<Key>g:             gdb-process()\n\
  1972. ~Ctrl ~Meta<Key>h:             gdb-process()\n\
  1973. ~Ctrl ~Meta<Key>i:             gdb-process()\n\
  1974. ~Ctrl ~Meta<Key>j:             gdb-process()\n\
  1975. ~Ctrl ~Meta<Key>k:             gdb-process()\n\
  1976. ~Ctrl ~Meta<Key>l:             gdb-process()\n\
  1977. ~Ctrl ~Meta<Key>m:             gdb-process()\n\
  1978. ~Ctrl ~Meta<Key>n:             gdb-process()\n\
  1979. ~Ctrl ~Meta<Key>o:             gdb-process()\n\
  1980. ~Ctrl ~Meta<Key>p:             gdb-process()\n\
  1981. ~Ctrl ~Meta<Key>q:             gdb-process()\n\
  1982. ~Ctrl ~Meta<Key>r:             gdb-process()\n\
  1983. ~Ctrl ~Meta<Key>s:             gdb-process()\n\
  1984. ~Ctrl ~Meta<Key>t:             gdb-process()\n\
  1985. ~Ctrl ~Meta<Key>u:             gdb-process()\n\
  1986. ~Ctrl ~Meta<Key>v:             gdb-process()\n\
  1987. ~Ctrl ~Meta<Key>w:             gdb-process()\n\
  1988. ~Ctrl ~Meta<Key>x:             gdb-process()\n\
  1989. ~Ctrl ~Meta<Key>y:             gdb-process()\n\
  1990. ~Ctrl ~Meta<Key>z:             gdb-process()\n\
  1991. ~Ctrl ~Meta<Key>braceleft:         gdb-process()\n\
  1992. ~Ctrl ~Meta<Key>bar:             gdb-process()\n\
  1993. ~Ctrl ~Meta<Key>braceright:         gdb-process()\n\
  1994. ~Ctrl ~Meta<Key>asciitilde:         gdb-process()\n\
  1995. ~Ctrl ~Meta ~Shift<Key>KP_0:         gdb-process()\n\
  1996. ~Ctrl ~Meta ~Shift<Key>KP_1:         gdb-process()\n\
  1997. ~Ctrl ~Meta ~Shift<Key>KP_2:         gdb-process()\n\
  1998. ~Ctrl ~Meta ~Shift<Key>KP_3:         gdb-process()\n\
  1999. ~Ctrl ~Meta ~Shift<Key>KP_4:         gdb-process()\n\
  2000. ~Ctrl ~Meta ~Shift<Key>KP_5:         gdb-process()\n\
  2001. ~Ctrl ~Meta ~Shift<Key>KP_6:         gdb-process()\n\
  2002. ~Ctrl ~Meta ~Shift<Key>KP_7:         gdb-process()\n\
  2003. ~Ctrl ~Meta ~Shift<Key>KP_8:         gdb-process()\n\
  2004. ~Ctrl ~Meta ~Shift<Key>KP_9:         gdb-process()\n\
  2005. ~Ctrl ~Meta<Key>KP_Space:         gdb-process()\n\
  2006. ~Ctrl ~Meta<Key>KP_Tab:             gdb-process()\n\
  2007. ~Ctrl ~Meta<Key>KP_Enter:         gdb-process()\n\
  2008. ~Ctrl ~Meta<Key>KP_Equal:         gdb-process()\n\
  2009. ~Ctrl ~Meta<Key>KP_Multiply:         gdb-process()\n\
  2010. ~Ctrl ~Meta<Key>KP_Add:             gdb-process()\n\
  2011. ~Ctrl ~Meta<Key>KP_Separator:         gdb-process()\n\
  2012. ~Ctrl ~Meta<Key>KP_Subtract:         gdb-process()\n\
  2013. ~Ctrl ~Meta<Key>KP_Decimal:         gdb-process()\n\
  2014. ~Ctrl ~Meta<Key>KP_Divide:         gdb-process()\n\
  2015. ~Meta Ctrl<Key>C:             gdb-process()\n\
  2016. ~Meta Ctrl<Key>D:             gdb-process(process-delete)\n\
  2017. ~Meta Ctrl<Key>G:             gdb-process()\n\
  2018. ~Meta Ctrl ~Shift<Key>K:         gdb-process(delete-to-end-of-line)\n\
  2019. ~Meta Ctrl<Key>W:             gdb-process(delete-previous-word)\n\
  2020. ~Meta Ctrl<Key>U:             gdb-process()\n \
  2021. Ctrl<Key>A:        select-all()                \n\
  2022. Ctrl<Key>B:        gdb-backward-character()    \n\
  2023. Ctrl<Key>D:        delete-next-character()     \n\
  2024. Ctrl<Key>E:        end-of-line()            \n\
  2025. Ctrl<Key>F:        gdb-forward-character()        \n\
  2026. Ctrl<Key>G:        gdb-control(^C)            \n\
  2027. <Key>Break:        gdb-interrupt()            \n\
  2028. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  2029. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  2030. Ctrl<Key>H:        delete-previous-character() \n\
  2031. Ctrl<Key>I:        self-insert()               \n\
  2032. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  2033. Ctrl<Key>U:         beginning-of-line()        \
  2034.             delete-to-end-of-line()        \n\
  2035. Ctrl<Key>W:        delete-previous-word()        \n\
  2036. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  2037. ~Shift <Key>R7:        beginning-of-line()        \n\
  2038. ~Shift <Key>R13:    end-of-line()            \n\
  2039. ~Shift <Key>Home:    beginning-of-line()        \n\
  2040. ~Shift <Key>End:    end-of-line()            \n\
  2041. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  2042. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  2043. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  2044. ~Shift Ctrl<Btn4Down>,<Btn4Up>:        previous-page()\n\
  2045. ~Ctrl Shift<Btn4Down>,<Btn4Up>:        previous-line()\n\
  2046. ~Shift ~Ctrl<Btn4Down>,<Btn4Up>:    previous-line()\
  2047.                     previous-line()\
  2048.                     previous-line()\
  2049.                     previous-line()\
  2050.                     previous-line()\n\
  2051. ~Shift Ctrl<Btn5Down>,<Btn5Up>:        next-page()\n\
  2052. ~Ctrl Shift<Btn5Down>,<Btn5Up>:        next-line()\n\
  2053. ~Shift ~Ctrl<Btn5Down>,<Btn5Up>:    next-line()\
  2054.                     next-line()\
  2055.                     next-line()\
  2056.                     next-line()\
  2057.                     next-line()\n \
  2058. Ctrl<Key>J:        newline()                   \n\
  2059. Ctrl<Key>M:        newline()                   \n\
  2060. Ctrl<Key>N:        gdb-next-history()        \n\
  2061. Ctrl<Key>P:        gdb-previous-history()      \n\
  2062. Meta<Key>V:        previous-page()            \n\
  2063. Ctrl<Key>V:        next-page()            \n\
  2064. ~Shift <Key>Prior:    previous-page()            \n\
  2065. ~Shift <Key>Next:    next-page()                \n\
  2066. Shift<Key>osfPageUp:    previous-page(extend)        \n\
  2067. Shift<Key>osfPageDown:    next-page(extend)           \n\
  2068. Shift<Key>Prior:    previous-page(extend)        \n\
  2069. Shift<Key>Next:        next-page(extend)        \n
  2070. Ddd*code_text_w.baseTranslations:   \
  2071. #override\n \
  2072. <Btn3Down>:        source-popup-menu()         \n\
  2073. ~Ctrl ~Shift<Btn1Down>:    source-start-select-word()  \n\
  2074. ~Ctrl ~Shift<Btn1Up>:    source-end-select-word() source-double-click() \n\
  2075. Ctrl<Key>A:        select-all()                \n\
  2076. Ctrl<Key>B:        gdb-isearch-prev()            \n\
  2077. Ctrl<Key>C:             gdb-control(^C)             \n\
  2078. Ctrl<Key>E:        end-of-line()            \n\
  2079. Ctrl<Key>F:        gdb-isearch-next()        \n\
  2080. Ctrl<Key>G:             gdb-control(^C)             \n\
  2081. Ctrl<Key>N:        gdb-next-history()        \n\
  2082. Ctrl<Key>P:        gdb-previous-history()      \n\
  2083. Ctrl<Key>R:        gdb-isearch-prev()          \n\
  2084. Ctrl<Key>S:        gdb-isearch-next()          \n\
  2085. Ctrl<Key>V:        next-page()            \
  2086.             source-update-glyphs()        \n\
  2087. Meta<Key>V:        previous-page()            \
  2088.             source-update-glyphs()        \n\
  2089. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  2090. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  2091. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n\
  2092. ~Shift <Key>R7:        beginning-of-line()        \n\
  2093. ~Shift <Key>R13:    end-of-line()            \n\
  2094. ~Shift <Key>Tab:    PrimitiveNextTabGroup()        \n\
  2095. ~Shift <Key>osfPageUp:    previous-page()            \
  2096.             source-update-glyphs()        \n\
  2097. ~Shift <Key>osfPageDown: next-page()            \
  2098.             source-update-glyphs()        \n\
  2099. Shift<Key>osfPageUp:    previous-page(extend)        \
  2100.             source-update-glyphs()        \n\
  2101. Shift<Key>osfPageDown:    next-page(extend)        \
  2102.             source-update-glyphs()        \n\
  2103. ~Shift <Key>Prior:    previous-page()            \
  2104.             source-update-glyphs()        \n\
  2105. ~Shift <Key>Next:    next-page()            \
  2106.             source-update-glyphs()        \n\
  2107. Shift<Key>Prior:    previous-page(extend)        \
  2108.             source-update-glyphs()        \n\
  2109. Shift<Key>Next:        next-page(extend)        \
  2110.             source-update-glyphs()        \n\
  2111. ~Shift <Key>Home:    beginning-of-line()        \n\
  2112. ~Shift <Key>End:    end-of-line()            \n \
  2113. ~Meta<Key>osfBackSpace:             gdb-process(delete-previous-character)\n\
  2114. ~Ctrl ~Meta<Key>BackSpace:         gdb-process(delete-previous-character)\n\
  2115. ~Meta<Key>Tab:                 gdb-process(process-tab)\n\
  2116. ~Ctrl ~Meta<Key>Return:             gdb-process(process-return)\n\
  2117. ~Ctrl ~Meta<Key>Linefeed:         gdb-process(process-return)\n\
  2118. ~Ctrl ~Meta<Key>Escape:             gdb-interrupt()\n\
  2119. ~Meta<Key>osfCancel:             gdb-interrupt()\n\
  2120. ~Meta<Key>Delete:             gdb-process(delete-next-character)\n\
  2121. ~Ctrl ~Meta<Key>space:             gdb-process()\n\
  2122. ~Ctrl ~Meta<Key>exclam:             gdb-process()\n\
  2123. ~Ctrl ~Meta<Key>quotedbl:         gdb-process()\n\
  2124. ~Ctrl ~Meta<Key>numbersign:         gdb-process()\n\
  2125. ~Ctrl ~Meta<Key>dollar:             gdb-process()\n\
  2126. ~Ctrl ~Meta<Key>percent:         gdb-process()\n\
  2127. ~Ctrl ~Meta<Key>ampersand:         gdb-process()\n\
  2128. ~Ctrl ~Meta<Key>apostrophe:         gdb-process()\n\
  2129. ~Ctrl ~Meta<Key>parenleft:         gdb-process()\n\
  2130. ~Ctrl ~Meta<Key>parenright:         gdb-process()\n\
  2131. ~Ctrl ~Meta<Key>asterisk:         gdb-process()\n\
  2132. ~Ctrl ~Meta<Key>plus:             gdb-process()\n\
  2133. ~Ctrl ~Meta<Key>comma:             gdb-process()\n\
  2134. ~Ctrl ~Meta<Key>minus:             gdb-process()\n\
  2135. ~Ctrl ~Meta<Key>period:             gdb-process()\n\
  2136. ~Ctrl ~Meta<Key>slash:             gdb-process()\n\
  2137. ~Ctrl ~Meta<Key>0:             gdb-process()\n\
  2138. ~Ctrl ~Meta<Key>1:             gdb-process()\n\
  2139. ~Ctrl ~Meta<Key>2:             gdb-process()\n\
  2140. ~Ctrl ~Meta<Key>3:             gdb-process()\n\
  2141. ~Ctrl ~Meta<Key>4:             gdb-process()\n\
  2142. ~Ctrl ~Meta<Key>5:             gdb-process()\n\
  2143. ~Ctrl ~Meta<Key>6:             gdb-process()\n\
  2144. ~Ctrl ~Meta<Key>7:             gdb-process()\n\
  2145. ~Ctrl ~Meta<Key>8:             gdb-process()\n\
  2146. ~Ctrl ~Meta<Key>9:             gdb-process()\n\
  2147. ~Ctrl ~Meta<Key>colon:             gdb-process()\n\
  2148. ~Ctrl ~Meta<Key>semicolon:         gdb-process()\n\
  2149. ~Ctrl ~Meta<Key>less:             gdb-process()\n\
  2150. ~Ctrl ~Meta<Key>equal:             gdb-process()\n\
  2151. ~Ctrl ~Meta<Key>greater:         gdb-process()\n\
  2152. ~Ctrl ~Meta<Key>question:         gdb-process()\n\
  2153. ~Ctrl ~Meta<Key>at:             gdb-process()\n\
  2154. ~Ctrl ~Meta<Key>A:             gdb-process()\n\
  2155. ~Ctrl ~Meta<Key>B:             gdb-process()\n\
  2156. ~Ctrl ~Meta<Key>C:             gdb-process()\n\
  2157. ~Ctrl ~Meta<Key>D:             gdb-process()\n\
  2158. ~Ctrl ~Meta<Key>E:             gdb-process()\n\
  2159. ~Ctrl ~Meta<Key>F:             gdb-process()\n\
  2160. ~Ctrl ~Meta<Key>G:             gdb-process()\n\
  2161. ~Ctrl ~Meta<Key>H:             gdb-process()\n\
  2162. ~Ctrl ~Meta<Key>I:             gdb-process()\n\
  2163. ~Ctrl ~Meta<Key>J:             gdb-process()\n\
  2164. ~Ctrl ~Meta<Key>K:             gdb-process()\n\
  2165. ~Ctrl ~Meta<Key>L:             gdb-process()\n\
  2166. ~Ctrl ~Meta<Key>M:             gdb-process()\n\
  2167. ~Ctrl ~Meta<Key>N:             gdb-process()\n\
  2168. ~Ctrl ~Meta<Key>O:             gdb-process()\n\
  2169. ~Ctrl ~Meta<Key>P:             gdb-process()\n\
  2170. ~Ctrl ~Meta<Key>Q:             gdb-process()\n\
  2171. ~Ctrl ~Meta<Key>R:             gdb-process()\n\
  2172. ~Ctrl ~Meta<Key>S:             gdb-process()\n\
  2173. ~Ctrl ~Meta<Key>T:             gdb-process()\n\
  2174. ~Ctrl ~Meta<Key>U:             gdb-process()\n\
  2175. ~Ctrl ~Meta<Key>V:             gdb-process()\n\
  2176. ~Ctrl ~Meta<Key>W:             gdb-process()\n\
  2177. ~Ctrl ~Meta<Key>X:             gdb-process()\n\
  2178. ~Ctrl ~Meta<Key>Y:             gdb-process()\n\
  2179. ~Ctrl ~Meta<Key>Z:             gdb-process()\n\
  2180. ~Ctrl ~Meta<Key>bracketleft:         gdb-process()\n\
  2181. ~Ctrl ~Meta<Key>backslash:         gdb-process()\n\
  2182. ~Ctrl ~Meta<Key>bracketright:         gdb-process()\n\
  2183. ~Ctrl ~Meta<Key>asciicircum:         gdb-process()\n\
  2184. ~Ctrl ~Meta<Key>underscore:         gdb-process()\n\
  2185. ~Ctrl ~Meta<Key>grave:             gdb-process()\n\
  2186. ~Ctrl ~Meta<Key>a:             gdb-process()\n\
  2187. ~Ctrl ~Meta<Key>b:             gdb-process()\n\
  2188. ~Ctrl ~Meta<Key>c:             gdb-process()\n\
  2189. ~Ctrl ~Meta<Key>d:             gdb-process()\n\
  2190. ~Ctrl ~Meta<Key>e:             gdb-process()\n\
  2191. ~Ctrl ~Meta<Key>f:             gdb-process()\n\
  2192. ~Ctrl ~Meta<Key>g:             gdb-process()\n\
  2193. ~Ctrl ~Meta<Key>h:             gdb-process()\n\
  2194. ~Ctrl ~Meta<Key>i:             gdb-process()\n\
  2195. ~Ctrl ~Meta<Key>j:             gdb-process()\n\
  2196. ~Ctrl ~Meta<Key>k:             gdb-process()\n\
  2197. ~Ctrl ~Meta<Key>l:             gdb-process()\n\
  2198. ~Ctrl ~Meta<Key>m:             gdb-process()\n\
  2199. ~Ctrl ~Meta<Key>n:             gdb-process()\n\
  2200. ~Ctrl ~Meta<Key>o:             gdb-process()\n\
  2201. ~Ctrl ~Meta<Key>p:             gdb-process()\n\
  2202. ~Ctrl ~Meta<Key>q:             gdb-process()\n\
  2203. ~Ctrl ~Meta<Key>r:             gdb-process()\n\
  2204. ~Ctrl ~Meta<Key>s:             gdb-process()\n\
  2205. ~Ctrl ~Meta<Key>t:             gdb-process()\n\
  2206. ~Ctrl ~Meta<Key>u:             gdb-process()\n\
  2207. ~Ctrl ~Meta<Key>v:             gdb-process()\n\
  2208. ~Ctrl ~Meta<Key>w:             gdb-process()\n\
  2209. ~Ctrl ~Meta<Key>x:             gdb-process()\n\
  2210. ~Ctrl ~Meta<Key>y:             gdb-process()\n\
  2211. ~Ctrl ~Meta<Key>z:             gdb-process()\n\
  2212. ~Ctrl ~Meta<Key>braceleft:         gdb-process()\n\
  2213. ~Ctrl ~Meta<Key>bar:             gdb-process()\n\
  2214. ~Ctrl ~Meta<Key>braceright:         gdb-process()\n\
  2215. ~Ctrl ~Meta<Key>asciitilde:         gdb-process()\n\
  2216. ~Ctrl ~Meta ~Shift<Key>KP_0:         gdb-process()\n\
  2217. ~Ctrl ~Meta ~Shift<Key>KP_1:         gdb-process()\n\
  2218. ~Ctrl ~Meta ~Shift<Key>KP_2:         gdb-process()\n\
  2219. ~Ctrl ~Meta ~Shift<Key>KP_3:         gdb-process()\n\
  2220. ~Ctrl ~Meta ~Shift<Key>KP_4:         gdb-process()\n\
  2221. ~Ctrl ~Meta ~Shift<Key>KP_5:         gdb-process()\n\
  2222. ~Ctrl ~Meta ~Shift<Key>KP_6:         gdb-process()\n\
  2223. ~Ctrl ~Meta ~Shift<Key>KP_7:         gdb-process()\n\
  2224. ~Ctrl ~Meta ~Shift<Key>KP_8:         gdb-process()\n\
  2225. ~Ctrl ~Meta ~Shift<Key>KP_9:         gdb-process()\n\
  2226. ~Ctrl ~Meta<Key>KP_Space:         gdb-process()\n\
  2227. ~Ctrl ~Meta<Key>KP_Tab:             gdb-process()\n\
  2228. ~Ctrl ~Meta<Key>KP_Enter:         gdb-process()\n\
  2229. ~Ctrl ~Meta<Key>KP_Equal:         gdb-process()\n\
  2230. ~Ctrl ~Meta<Key>KP_Multiply:         gdb-process()\n\
  2231. ~Ctrl ~Meta<Key>KP_Add:             gdb-process()\n\
  2232. ~Ctrl ~Meta<Key>KP_Separator:         gdb-process()\n\
  2233. ~Ctrl ~Meta<Key>KP_Subtract:         gdb-process()\n\
  2234. ~Ctrl ~Meta<Key>KP_Decimal:         gdb-process()\n\
  2235. ~Ctrl ~Meta<Key>KP_Divide:         gdb-process()\n\
  2236. ~Meta Ctrl<Key>C:             gdb-process()\n\
  2237. ~Meta Ctrl<Key>D:             gdb-process(process-delete)\n\
  2238. ~Meta Ctrl<Key>G:             gdb-process()\n\
  2239. ~Meta Ctrl ~Shift<Key>K:         gdb-process(delete-to-end-of-line)\n\
  2240. ~Meta Ctrl<Key>W:             gdb-process(delete-previous-word)\n\
  2241. ~Meta Ctrl<Key>U:             gdb-process()\n \
  2242. Ctrl<Key>A:        select-all()                \n\
  2243. Ctrl<Key>B:        gdb-backward-character()    \n\
  2244. Ctrl<Key>D:        delete-next-character()     \n\
  2245. Ctrl<Key>E:        end-of-line()            \n\
  2246. Ctrl<Key>F:        gdb-forward-character()        \n\
  2247. Ctrl<Key>G:        gdb-control(^C)            \n\
  2248. <Key>Break:        gdb-interrupt()            \n\
  2249. ~Ctrl ~Shift ~Meta<Key>Escape:    gdb-interrupt()             \n\
  2250. ~Ctrl ~Shift ~Meta<Key>osfCancel:    gdb-interrupt()             \n\
  2251. Ctrl<Key>H:        delete-previous-character() \n\
  2252. Ctrl<Key>I:        self-insert()               \n\
  2253. Ctrl<Key>K:        delete-to-end-of-line()        \n\
  2254. Ctrl<Key>U:         beginning-of-line()        \
  2255.             delete-to-end-of-line()        \n\
  2256. Ctrl<Key>W:        delete-previous-word()        \n\
  2257. Ctrl<Key>osfBackSpace:    delete-previous-word()        \n\
  2258. ~Shift <Key>R7:        beginning-of-line()        \n\
  2259. ~Shift <Key>R13:    end-of-line()            \n\
  2260. ~Shift <Key>Home:    beginning-of-line()        \n\
  2261. ~Shift <Key>End:    end-of-line()            \n\
  2262. ~Ctrl Shift<Key>Delete: cut-clipboard()             \n\
  2263. ~Shift Ctrl<Key>Insert: copy-clipboard()            \n\
  2264. ~Ctrl Shift<Key>Insert: paste-clipboard()           \n \
  2265. ~Shift Ctrl<Btn4Down>,<Btn4Up>:        previous-page()\n\
  2266. ~Ctrl Shift<Btn4Down>,<Btn4Up>:        previous-line()\n\
  2267. ~Shift ~Ctrl<Btn4Down>,<Btn4Up>:    previous-line()\
  2268.                     previous-line()\
  2269.                     previous-line()\
  2270.                     previous-line()\
  2271.                     previous-line()\n\
  2272. ~Shift Ctrl<Btn5Down>,<Btn5Up>:        next-page()\n\
  2273. ~Ctrl Shift<Btn5Down>,<Btn5Up>:        next-line()\n\
  2274. ~Shift ~Ctrl<Btn5Down>,<Btn5Up>:    next-line()\
  2275.                     next-line()\
  2276.                     next-line()\
  2277.                     next-line()\
  2278.                     next-line()\n \
  2279. Ctrl<Key>J:        newline()                   \n\
  2280. Ctrl<Key>M:        newline()                   \n\
  2281. Ctrl<Key>N:        gdb-next-history()        \n\
  2282. Ctrl<Key>P:        gdb-previous-history()      \n\
  2283. Meta<Key>V:        previous-page()            \n\
  2284. Ctrl<Key>V:        next-page()            \n\
  2285. ~Shift <Key>Prior:    previous-page()            \n\
  2286. ~Shift <Key>Next:    next-page()                \n\
  2287. Shift<Key>osfPageUp:    previous-page(extend)        \n\
  2288. Shift<Key>osfPageDown:    next-page(extend)           \n\
  2289. Shift<Key>Prior:    previous-page(extend)        \n\
  2290. Shift<Key>Next:        next-page(extend)        \n
  2291.  
  2292. ! Realize glyph drag and drop as well as glyph menu popups
  2293.  
  2294. Ddd*source_form_w.XmPushButton.baseTranslations: #override\n \
  2295. <Btn1Down>:      ArmAndActivate() source-drag-glyph() \n\
  2296. <Btn1Motion>:       source-follow-glyph()   \n\
  2297. ~Shift <Btn1Up>:  source-drop-glyph(move) \n\
  2298. Shift <Btn1Up>:   source-drop-glyph(copy) \n\
  2299. <Btn2Down>:      source-drag-glyph()      \n\
  2300. <Btn2Motion>:       source-follow-glyph()   \n\
  2301. ~Shift <Btn2Up>:  source-drop-glyph(move) \n\
  2302. Shift <Btn2Up>:   source-drop-glyph(copy) \n\
  2303. <Btn3Down>:      source-popup-menu()     \n
  2304. Ddd*code_form_w.XmPushButton.baseTranslations:   #override\n \
  2305. <Btn1Down>:      ArmAndActivate() source-drag-glyph() \n\
  2306. <Btn1Motion>:       source-follow-glyph()   \n\
  2307. ~Shift <Btn1Up>:  source-drop-glyph(move) \n\
  2308. Shift <Btn1Up>:   source-drop-glyph(copy) \n\
  2309. <Btn2Down>:      source-drag-glyph()      \n\
  2310. <Btn2Motion>:       source-follow-glyph()   \n\
  2311. ~Shift <Btn2Up>:  source-drop-glyph(move) \n\
  2312. Shift <Btn2Up>:   source-drop-glyph(copy) \n\
  2313. <Btn3Down>:      source-popup-menu()     \n
  2314.  
  2315. ! This defines the popup menus in the graph window.
  2316.  
  2317. Ddd*graph_edit.baseTranslations: #override\n \
  2318. ~Shift<Btn1Down>: graph-select-or-move()\n\
  2319. Shift<Btn1Down>:  graph-toggle-or-move()\n\
  2320. <Btn2Down>:      graph-toggle-or-move()\n\
  2321. <Btn3Down>:      graph-select() graph-popup-menu()\n \
  2322. ~Meta<Key>osfBackSpace:             gdb-process(delete-previous-character)\n\
  2323. ~Ctrl ~Meta<Key>BackSpace:         gdb-process(delete-previous-character)\n\
  2324. ~Meta<Key>Tab:                 gdb-process(process-tab)\n\
  2325. ~Ctrl ~Meta<Key>Return:             gdb-process(process-return)\n\
  2326. ~Ctrl ~Meta<Key>Linefeed:         gdb-process(process-return)\n\
  2327. ~Ctrl ~Meta<Key>Escape:             gdb-interrupt()\n\
  2328. ~Meta<Key>osfCancel:             gdb-interrupt()\n\
  2329. ~Meta<Key>Delete:             gdb-process(delete-next-character)\n\
  2330. ~Ctrl ~Meta<Key>space:             gdb-process()\n\
  2331. ~Ctrl ~Meta<Key>exclam:             gdb-process()\n\
  2332. ~Ctrl ~Meta<Key>quotedbl:         gdb-process()\n\
  2333. ~Ctrl ~Meta<Key>numbersign:         gdb-process()\n\
  2334. ~Ctrl ~Meta<Key>dollar:             gdb-process()\n\
  2335. ~Ctrl ~Meta<Key>percent:         gdb-process()\n\
  2336. ~Ctrl ~Meta<Key>ampersand:         gdb-process()\n\
  2337. ~Ctrl ~Meta<Key>apostrophe:         gdb-process()\n\
  2338. ~Ctrl ~Meta<Key>parenleft:         gdb-process()\n\
  2339. ~Ctrl ~Meta<Key>parenright:         gdb-process()\n\
  2340. ~Ctrl ~Meta<Key>asterisk:         gdb-process()\n\
  2341. ~Ctrl ~Meta<Key>plus:             gdb-process()\n\
  2342. ~Ctrl ~Meta<Key>comma:             gdb-process()\n\
  2343. ~Ctrl ~Meta<Key>minus:             gdb-process()\n\
  2344. ~Ctrl ~Meta<Key>period:             gdb-process()\n\
  2345. ~Ctrl ~Meta<Key>slash:             gdb-process()\n\
  2346. ~Ctrl ~Meta<Key>0:             gdb-process()\n\
  2347. ~Ctrl ~Meta<Key>1:             gdb-process()\n\
  2348. ~Ctrl ~Meta<Key>2:             gdb-process()\n\
  2349. ~Ctrl ~Meta<Key>3:             gdb-process()\n\
  2350. ~Ctrl ~Meta<Key>4:             gdb-process()\n\
  2351. ~Ctrl ~Meta<Key>5:             gdb-process()\n\
  2352. ~Ctrl ~Meta<Key>6:             gdb-process()\n\
  2353. ~Ctrl ~Meta<Key>7:             gdb-process()\n\
  2354. ~Ctrl ~Meta<Key>8:             gdb-process()\n\
  2355. ~Ctrl ~Meta<Key>9:             gdb-process()\n\
  2356. ~Ctrl ~Meta<Key>colon:             gdb-process()\n\
  2357. ~Ctrl ~Meta<Key>semicolon:         gdb-process()\n\
  2358. ~Ctrl ~Meta<Key>less:             gdb-process()\n\
  2359. ~Ctrl ~Meta<Key>equal:             gdb-process()\n\
  2360. ~Ctrl ~Meta<Key>greater:         gdb-process()\n\
  2361. ~Ctrl ~Meta<Key>question:         gdb-process()\n\
  2362. ~Ctrl ~Meta<Key>at:             gdb-process()\n\
  2363. ~Ctrl ~Meta<Key>A:             gdb-process()\n\
  2364. ~Ctrl ~Meta<Key>B:             gdb-process()\n\
  2365. ~Ctrl ~Meta<Key>C:             gdb-process()\n\
  2366. ~Ctrl ~Meta<Key>D:             gdb-process()\n\
  2367. ~Ctrl ~Meta<Key>E:             gdb-process()\n\
  2368. ~Ctrl ~Meta<Key>F:             gdb-process()\n\
  2369. ~Ctrl ~Meta<Key>G:             gdb-process()\n\
  2370. ~Ctrl ~Meta<Key>H:             gdb-process()\n\
  2371. ~Ctrl ~Meta<Key>I:             gdb-process()\n\
  2372. ~Ctrl ~Meta<Key>J:             gdb-process()\n\
  2373. ~Ctrl ~Meta<Key>K:             gdb-process()\n\
  2374. ~Ctrl ~Meta<Key>L:             gdb-process()\n\
  2375. ~Ctrl ~Meta<Key>M:             gdb-process()\n\
  2376. ~Ctrl ~Meta<Key>N:             gdb-process()\n\
  2377. ~Ctrl ~Meta<Key>O:             gdb-process()\n\
  2378. ~Ctrl ~Meta<Key>P:             gdb-process()\n\
  2379. ~Ctrl ~Meta<Key>Q:             gdb-process()\n\
  2380. ~Ctrl ~Meta<Key>R:             gdb-process()\n\
  2381. ~Ctrl ~Meta<Key>S:             gdb-process()\n\
  2382. ~Ctrl ~Meta<Key>T:             gdb-process()\n\
  2383. ~Ctrl ~Meta<Key>U:             gdb-process()\n\
  2384. ~Ctrl ~Meta<Key>V:             gdb-process()\n\
  2385. ~Ctrl ~Meta<Key>W:             gdb-process()\n\
  2386. ~Ctrl ~Meta<Key>X:             gdb-process()\n\
  2387. ~Ctrl ~Meta<Key>Y:             gdb-process()\n\
  2388. ~Ctrl ~Meta<Key>Z:             gdb-process()\n\
  2389. ~Ctrl ~Meta<Key>bracketleft:         gdb-process()\n\
  2390. ~Ctrl ~Meta<Key>backslash:         gdb-process()\n\
  2391. ~Ctrl ~Meta<Key>bracketright:         gdb-process()\n\
  2392. ~Ctrl ~Meta<Key>asciicircum:         gdb-process()\n\
  2393. ~Ctrl ~Meta<Key>underscore:         gdb-process()\n\
  2394. ~Ctrl ~Meta<Key>grave:             gdb-process()\n\
  2395. ~Ctrl ~Meta<Key>a:             gdb-process()\n\
  2396. ~Ctrl ~Meta<Key>b:             gdb-process()\n\
  2397. ~Ctrl ~Meta<Key>c:             gdb-process()\n\
  2398. ~Ctrl ~Meta<Key>d:             gdb-process()\n\
  2399. ~Ctrl ~Meta<Key>e:             gdb-process()\n\
  2400. ~Ctrl ~Meta<Key>f:             gdb-process()\n\
  2401. ~Ctrl ~Meta<Key>g:             gdb-process()\n\
  2402. ~Ctrl ~Meta<Key>h:             gdb-process()\n\
  2403. ~Ctrl ~Meta<Key>i:             gdb-process()\n\
  2404. ~Ctrl ~Meta<Key>j:             gdb-process()\n\
  2405. ~Ctrl ~Meta<Key>k:             gdb-process()\n\
  2406. ~Ctrl ~Meta<Key>l:             gdb-process()\n\
  2407. ~Ctrl ~Meta<Key>m:             gdb-process()\n\
  2408. ~Ctrl ~Meta<Key>n:             gdb-process()\n\
  2409. ~Ctrl ~Meta<Key>o:             gdb-process()\n\
  2410. ~Ctrl ~Meta<Key>p:             gdb-process()\n\
  2411. ~Ctrl ~Meta<Key>q:             gdb-process()\n\
  2412. ~Ctrl ~Meta<Key>r:             gdb-process()\n\
  2413. ~Ctrl ~Meta<Key>s:             gdb-process()\n\
  2414. ~Ctrl ~Meta<Key>t:             gdb-process()\n\
  2415. ~Ctrl ~Meta<Key>u:             gdb-process()\n\
  2416. ~Ctrl ~Meta<Key>v:             gdb-process()\n\
  2417. ~Ctrl ~Meta<Key>w:             gdb-process()\n\
  2418. ~Ctrl ~Meta<Key>x:             gdb-process()\n\
  2419. ~Ctrl ~Meta<Key>y:             gdb-process()\n\
  2420. ~Ctrl ~Meta<Key>z:             gdb-process()\n\
  2421. ~Ctrl ~Meta<Key>braceleft:         gdb-process()\n\
  2422. ~Ctrl ~Meta<Key>bar:             gdb-process()\n\
  2423. ~Ctrl ~Meta<Key>braceright:         gdb-process()\n\
  2424. ~Ctrl ~Meta<Key>asciitilde:         gdb-process()\n\
  2425. ~Ctrl ~Meta ~Shift<Key>KP_0:         gdb-process()\n\
  2426. ~Ctrl ~Meta ~Shift<Key>KP_1:         gdb-process()\n\
  2427. ~Ctrl ~Meta ~Shift<Key>KP_2:         gdb-process()\n\
  2428. ~Ctrl ~Meta ~Shift<Key>KP_3:         gdb-process()\n\
  2429. ~Ctrl ~Meta ~Shift<Key>KP_4:         gdb-process()\n\
  2430. ~Ctrl ~Meta ~Shift<Key>KP_5:         gdb-process()\n\
  2431. ~Ctrl ~Meta ~Shift<Key>KP_6:         gdb-process()\n\
  2432. ~Ctrl ~Meta ~Shift<Key>KP_7:         gdb-process()\n\
  2433. ~Ctrl ~Meta ~Shift<Key>KP_8:         gdb-process()\n\
  2434. ~Ctrl ~Meta ~Shift<Key>KP_9:         gdb-process()\n\
  2435. ~Ctrl ~Meta<Key>KP_Space:         gdb-process()\n\
  2436. ~Ctrl ~Meta<Key>KP_Tab:             gdb-process()\n\
  2437. ~Ctrl ~Meta<Key>KP_Enter:         gdb-process()\n\
  2438. ~Ctrl ~Meta<Key>KP_Equal:         gdb-process()\n\
  2439. ~Ctrl ~Meta<Key>KP_Multiply:         gdb-process()\n\
  2440. ~Ctrl ~Meta<Key>KP_Add:             gdb-process()\n\
  2441. ~Ctrl ~Meta<Key>KP_Separator:         gdb-process()\n\
  2442. ~Ctrl ~Meta<Key>KP_Subtract:         gdb-process()\n\
  2443. ~Ctrl ~Meta<Key>KP_Decimal:         gdb-process()\n\
  2444. ~Ctrl ~Meta<Key>KP_Divide:         gdb-process()\n\
  2445. ~Meta Ctrl<Key>C:             gdb-process()\n\
  2446. ~Meta Ctrl<Key>D:             gdb-process(process-delete)\n\
  2447. ~Meta Ctrl<Key>G:             gdb-process()\n\
  2448. ~Meta Ctrl ~Shift<Key>K:         gdb-process(delete-to-end-of-line)\n\
  2449. ~Meta Ctrl<Key>W:             gdb-process(delete-previous-word)\n\
  2450. ~Meta Ctrl<Key>U:             gdb-process()\n
  2451.  
  2452.  
  2453.  
  2454. !-----------------------------------------------------------------------------
  2455. ! Combo Boxes
  2456. !-----------------------------------------------------------------------------
  2457.  
  2458. ! The default number of visible items in a combo box
  2459. Ddd*XmComboBox*visibleItemCount:    10
  2460. Ddd*comboBoxShell*visibleItemCount: 10
  2461.  
  2462. ! In dialogs, have less items
  2463. Ddd*XmSelectionBox*XmComboBox*visibleItemCount:    5
  2464. Ddd*XmSelectionBox*comboBoxShell*visibleItemCount: 5
  2465.  
  2466. ! Have somewhat lighter combo box arrows
  2467. Ddd*XmComboBox.arrowSize:  15
  2468. Ddd*comboBoxArrow.width:   12
  2469.  
  2470.  
  2471. !-----------------------------------------------------------------------------
  2472. ! Titles
  2473. !-----------------------------------------------------------------------------
  2474.  
  2475. ! Generic title
  2476. Ddd*title:                DDD Window
  2477.  
  2478. ! Main Window
  2479. Ddd.title:                DDD: The Data Display Debugger
  2480. Ddd.iconName:                DDD
  2481.  
  2482. ! Separate windows
  2483. Ddd*command_shell.title:        DDD: Debugger Console
  2484. Ddd*command_shell.iconName:        DDD: Console
  2485.  
  2486. Ddd*source_view_shell.title:        DDD: Program Source
  2487. Ddd*source_view_shell.iconName:        DDD: Source
  2488.  
  2489. Ddd*data_disp_shell.title:        DDD: Program Data
  2490. Ddd*data_disp_shell.iconName:        DDD: Data
  2491.  
  2492. ! Command tool
  2493. Ddd*tool_shell.title:            DDD
  2494. Ddd*tool_shell.iconName:        DDD: Command Tool
  2495.  
  2496.  
  2497.  
  2498. !-----------------------------------------------------------------------------
  2499. ! MWM Decorations
  2500. !-----------------------------------------------------------------------------
  2501.  
  2502. ! Don't place resize handles on dialogs
  2503. Ddd*XmDialogShell.mwmDecorations: 26
  2504.  
  2505. ! Exception: the manual and license browsers.
  2506. Ddd*manual_help_popup.mwmDecorations: 1
  2507. Ddd*license_popup.mwmDecorations:     1
  2508. Ddd*news_popup.mwmDecorations:        1
  2509.  
  2510.  
  2511. !-----------------------------------------------------------------------------
  2512. ! Help
  2513. !-----------------------------------------------------------------------------
  2514.  
  2515. ! Make help button a little wider
  2516. Ddd*helpLabelString: \ \ \ Help\ \ \ 
  2517.  
  2518. ! Set this to `on' to view widget names in help texts.
  2519. Ddd*helpShowTitle: off
  2520.  
  2521. ! Help is never acknowledged, always closed.
  2522. Ddd*help.okLabelString:         Close
  2523. Ddd*license.okLabelString:     Close
  2524. Ddd*news.okLabelString:         Close
  2525. Ddd*manual_help.okLabelString:     Close
  2526. Ddd*tip_dialog.okLabelString:         Close
  2527.  
  2528. ! Titles
  2529. Ddd*help_popup.title:           DDD Help
  2530. Ddd*manual_help_popup.title:    DDD Reference
  2531. Ddd*manual_help_popup.iconName: DDD Reference
  2532. Ddd*license_popup.title:        DDD License
  2533. Ddd*license_popup.iconName:     DDD License
  2534. Ddd*news_popup.title:           DDD News
  2535. Ddd*news_popup.iconName:         DDD News
  2536.  
  2537. ! Icons
  2538. Ddd*help_popup.help.symbolPixmap: ddd
  2539.  
  2540. ! Help on help.
  2541. Ddd*help_popup.help*helpString: \
  2542. @rm Welcome to DDD Help\!\n\
  2543. \n\
  2544. To get help about an item, just point on it and press @key F1@rm .\n\
  2545. The item's functionality will be explained here.\n\
  2546. \n\
  2547. To find out what you can do next, press @key Ctrl+F1@rm .  Depending on\n\
  2548. the current DDD state, you will be given some general advice.\n\
  2549. \n\
  2550. Have fun with DDD!
  2551.  
  2552.  
  2553. ! The official announcement.
  2554. ! Build information (like `ddd --configuration') is appended to this text.
  2555. Ddd*helpOnVersionString:    \
  2556. @llogo DDD@logo: \
  2557. The @llogo D@logo ata @llogo D@logo isplay @llogo D@logo ebugger\n\
  2558. @rm by Dorothea L\374tkehaus and Andreas Zeller.\n\n
  2559.  
  2560. ! The default Help Text.
  2561. Ddd*helpString:    \
  2562. @rm This item has no function, or is not documented.
  2563.  
  2564. ! Some trival help
  2565. Ddd*XmScrollBar.helpString: \
  2566. @bs Scroll Bar@rm \n\
  2567. \n\
  2568. Click or hold @bs mouse button 1@rm  on an arrow button\n\
  2569. to scroll the window in the arrow direction.\n\
  2570. \n\
  2571. Drag the slider with @bs mouse button 1@rm  to select the\n\
  2572. visible part of the window.
  2573. ! Ddd*XmScrollBar.tipString: \
  2574. ! @rm Scroll window
  2575.  
  2576. Ddd*XmSash.helpString: \
  2577. @bs Paned Window Sash@rm \n\
  2578. \n\
  2579. Drag the sash with @bs mouse button 1@rm  to resize window parts.
  2580. Ddd*XmSash.tipString: \
  2581. @rm Resize window
  2582.  
  2583. Ddd*Separator.helpString: \
  2584. @bs Paned Window Sash@rm \n\
  2585. \n\
  2586. Drag the sash with @bs mouse button 1@rm  to resize window parts.
  2587. Ddd*Separator.tipString: \
  2588. @rm Resize window
  2589.  
  2590. Ddd*separator.helpString: \
  2591. @bs Paned Window Sash@rm \n\
  2592. \n\
  2593. Drag the sash with @bs mouse button 1@rm  to resize window parts.
  2594. Ddd*separator.tipString: \
  2595. @rm Resize window
  2596.  
  2597. Ddd*arg_label.helpString: \
  2598. @bs Argument Prompt@rm \n\
  2599. \n\
  2600. Enter the argument @bf ()@rm  on the right.\n\
  2601. Click on @bf ():@rm  to clear the argument @bf ()@rm .
  2602.  
  2603. Ddd*arg_label.tipString: \
  2604. @rm Clear argument @bf ()@rm 
  2605.  
  2606. Ddd*arg_label.documentationString: \
  2607. @rm Click to clear the argument @bf ()@rm .
  2608.  
  2609.  
  2610. !-----------------------------------------------------------------------------
  2611. ! Traversal
  2612. !-----------------------------------------------------------------------------
  2613.  
  2614. Ddd*arg_label.traversalOn:        off
  2615. Ddd*status_form*traversalOn:        off
  2616. Ddd*XmSash.traversalOn:            off
  2617.  
  2618.  
  2619. !-----------------------------------------------------------------------------
  2620. ! DDD manual
  2621. !-----------------------------------------------------------------------------
  2622.  
  2623. Ddd*manual_help*title.labelString:    DDD Reference
  2624. Ddd*manual_help*title.alignment:    XmALIGNMENT_BEGINNING
  2625.  
  2626. Ddd*manual_help*area.allowResize:    on
  2627.  
  2628. Ddd*manual_help*index.selectionPolicy:    XmSINGLE_SELECT
  2629. Ddd*manual_help*index.visibleItemCount:    5
  2630.  
  2631. Ddd*manual_help*text.rows:        25
  2632. Ddd*manual_help*text.wordWrap:        on
  2633. Ddd*manual_help*text.scrollHorizontal:    off
  2634. Ddd*manual_help*scrollBarDisplayPolicy: XmAS_NEEDED
  2635.  
  2636. Ddd*manual_help*arg_label.labelString:    ():
  2637.  
  2638. Ddd*manual_help*findBackward.labelString:          @charset Find@small<< @charset()@rm 
  2639. Ddd*manual_help*findBackward.labelType:              XmPIXMAP
  2640. Ddd*manual_help*findBackward.labelPixmap:            find_backward
  2641. Ddd*manual_help*findBackward.labelInsensitivePixmap: find_backward-xx
  2642. Ddd*manual_help*findBackward.armPixmap:              find_backward-arm
  2643.  
  2644. Ddd*manual_help*findBackward.tipString:      \
  2645. @rm Find previous @bf ()@rm  in manual
  2646. Ddd*manual_help*findBackward.documentationString:    \
  2647. @rm Search the previous occurrence of @bf ()@rm  in the manual
  2648.  
  2649. Ddd*manual_help*findForward.labelString:          @charset Find@small>> @charset()@rm 
  2650. Ddd*manual_help*findForward.labelType:              XmPIXMAP
  2651. Ddd*manual_help*findForward.labelPixmap:            find_forward
  2652. Ddd*manual_help*findForward.labelInsensitivePixmap: find_forward-xx
  2653. Ddd*manual_help*findForward.armPixmap:              find_forward-arm
  2654.  
  2655. Ddd*manual_help*findForward.tipString:      \
  2656. @rm Find next @bf ()@rm  in manual
  2657. Ddd*manual_help*findForward.documentationString:    \
  2658. @rm Search the next occurrence of @bf ()@rm  in the manual
  2659.  
  2660. Ddd*manual_help*helpString: \
  2661. @bs DDD Manual Browser@rm \n\
  2662. \n\
  2663. To view a specific section, select its title from the index at the top.\n\
  2664. \n\
  2665. To find a string in the manual, enter it in the @bf ()@rm  argument field \
  2666. and press @key RETURN @symbol \277@rm .\n\
  2667. Click on @charset Find@small<< @charset()@rm  to search the next occurrence of @bf ()@rm .\n\
  2668. Click on @charset Find@small>> @charset()@rm  to search the previous occurrence of @bf ()@rm .
  2669.  
  2670.  
  2671. !-----------------------------------------------------------------------------
  2672. ! DDD license and news
  2673. !-----------------------------------------------------------------------------
  2674.  
  2675. Ddd*license*form.borderWidth:        0
  2676.  
  2677. Ddd*license*title.labelString:          DDD License
  2678. Ddd*license*title.alignment:            XmALIGNMENT_BEGINNING
  2679.  
  2680. Ddd*license*text.rows:                  25
  2681. Ddd*license*text.wordWrap:            on
  2682. Ddd*license*text.scrollHorizontal:        off
  2683. Ddd*license*scrollBarDisplayPolicy:       XmAS_NEEDED
  2684.  
  2685. Ddd*license*helpString: \
  2686. @bs DDD License@rm \n\
  2687. \n\
  2688. The DDD License, a GNU General Public License, describes the terms\n\
  2689. and conditions for copying, distributing and modifying DDD.\n\
  2690. \n\
  2691. Please see section 11, `@tt NO WARRANTY@rm', for the various kinds of warranty\n\
  2692. you do not have.
  2693.  
  2694.  
  2695. Ddd*news*form.borderWidth:        0
  2696.  
  2697. Ddd*news*title.labelString:          DDD News
  2698. Ddd*news*title.alignment:            XmALIGNMENT_BEGINNING
  2699.  
  2700. Ddd*news*text.rows:                  25
  2701. Ddd*news*text.wordWrap:                on
  2702. Ddd*news*text.scrollHorizontal:        off
  2703. Ddd*news*scrollBarDisplayPolicy:       XmAS_NEEDED
  2704.  
  2705. Ddd*news*helpString: \
  2706. @bs DDD News@rm \n\
  2707. \n\
  2708. What's new in this DDD release relative to previous releases.
  2709.  
  2710.  
  2711.  
  2712. !-----------------------------------------------------------------------------
  2713. ! Button tips
  2714. !-----------------------------------------------------------------------------
  2715.  
  2716. ! These colors are taken from Netscape.  The basic idea is that you might
  2717. ! have a Netscape already running, so we won't use up another color cell.
  2718.  
  2719. Ddd*tipLabel.background:  #ffffcc
  2720. Ddd*tipLabel.foreground:  black
  2721. Ddd*tipRow.background:    black
  2722. Ddd*tipShell.borderColor: black
  2723. Ddd*tipShell.borderWidth: 1
  2724.  
  2725.  
  2726. !-----------------------------------------------------------------------------
  2727. ! Menu Bar
  2728. !-----------------------------------------------------------------------------
  2729.  
  2730. Ddd*menubar.helpString:        \
  2731. @bs Menu Bar@rm \n\
  2732. \n\
  2733. @tt \267 @bf File@rm  @tt -@rm  select files and exit DDD.\n\
  2734. @tt \267 @bf Edit@rm  @tt -@rm  cut, copy, and paste text, and change DDD options.\n\
  2735. @tt \267 @bf View@rm  @tt -@rm  view DDD windows.\n\
  2736. @tt \267 @bf Program@rm  @tt -@rm  run the debugged program.\n\
  2737. @tt \267 @bf Commands@rm  @tt -@rm  view command history.\n\
  2738. @tt \267 @bf Status@rm  @tt -@rm  show program status (backtrace, registers, threads).\n\
  2739. @tt \267 @bf Source@rm  @tt -@rm  edit breakpoints and lookup previous positions.\n\
  2740. @tt \267 @bf Data@rm  @tt -@rm  edit displays.\n\
  2741. @tt \267 @bf Help@rm  @tt -@rm  on-line help and version information.
  2742.  
  2743. Ddd*menubar.marginWidth:     0
  2744. Ddd*menubar.marginHeight:    1
  2745. ! Ddd*menubar.shadowThickness: 1
  2746.  
  2747. ! File menu
  2748. Ddd*menubar.file.labelString:        File
  2749. Ddd*menubar.file*documentationString:    \
  2750. @rm Open program and source files
  2751. Ddd*menubar.file.mnemonic:        F
  2752.  
  2753.  
  2754. Ddd*menubar.file*helpString: \
  2755. @bs File Menu@rm \n\
  2756. \n\
  2757. @tt \267 @bf Open Program...@rm  @tt -@rm  open the program or class to be debugged.\n\
  2758. @tt \267 @bf Open Core Dump...@rm  @tt -@rm  open a core dump.\n\
  2759. @tt \267 @bf Open Source...@rm  @tt -@rm  open a source file.\n\
  2760. \n\
  2761. @tt \267 @bf Open Session...@rm  @tt -@rm  open a DDD debugging session.\n\
  2762. @tt \267 @bf Save Session As...@rm  @tt -@rm  save current debugging session.\n\
  2763. \n\
  2764. @tt \267 @bf Attach to Process...@rm  @tt -@rm  attach to a process outside of DDD.\n\
  2765. @tt \267 @bf Detach Process@rm  @tt -@rm  detach a process previously attached.\n\
  2766. \n\
  2767. @tt \267 @bf Print Graph...@rm  @tt -@rm  print the data display graph.\n\
  2768. @tt \267 @bf Change Directory...@rm  @tt -@rm  change current directory.\n\
  2769. @tt \267 @bf Make...@rm  @tt -@rm  run the make program.\n\
  2770. \n\
  2771. @tt \267 @bf Close@rm  @tt -@rm  close this window.\n\
  2772. @tt \267 @bf Restart@rm  @tt -@rm  restart DDD.\n\
  2773. @tt \267 @bf Exit@rm  @tt -@rm  exit DDD.
  2774.  
  2775. Ddd*fileMenu*helpString:     \
  2776. @bs File Menu@rm \n\
  2777. \n\
  2778. @tt \267 @bf Open Program...@rm  @tt -@rm  open the program or class to be debugged.\n\
  2779. @tt \267 @bf Open Core Dump...@rm  @tt -@rm  open a core dump.\n\
  2780. @tt \267 @bf Open Source...@rm  @tt -@rm  open a source file.\n\
  2781. \n\
  2782. @tt \267 @bf Open Session...@rm  @tt -@rm  open a DDD debugging session.\n\
  2783. @tt \267 @bf Save Session As...@rm  @tt -@rm  save current debugging session.\n\
  2784. \n\
  2785. @tt \267 @bf Attach to Process...@rm  @tt -@rm  attach to a process outside of DDD.\n\
  2786. @tt \267 @bf Detach Process@rm  @tt -@rm  detach a process previously attached.\n\
  2787. \n\
  2788. @tt \267 @bf Print Graph...@rm  @tt -@rm  print the data display graph.\n\
  2789. @tt \267 @bf Change Directory...@rm  @tt -@rm  change current directory.\n\
  2790. @tt \267 @bf Make...@rm  @tt -@rm  run the make program.\n\
  2791. \n\
  2792. @tt \267 @bf Close@rm  @tt -@rm  close this window.\n\
  2793. @tt \267 @bf Restart@rm  @tt -@rm  restart DDD.\n\
  2794. @tt \267 @bf Exit@rm  @tt -@rm  exit DDD.
  2795.  
  2796. Ddd*fileMenu*tearOffTitle:   File
  2797.  
  2798. Ddd*menubar*fileMenu.open_file.labelString: Open Program...
  2799. Ddd*menubar*fileMenu.open_file.mnemonic:    O
  2800. Ddd*menubar*fileMenu.open_file.accelerator:      ~Shift Ctrl<Key>O
  2801. Ddd*menubar*fileMenu.open_file.acceleratorText:  Ctrl+O
  2802. Ddd*menubar*fileMenu.open_file.documentationString:   \
  2803. @rm Open a program to be debugged
  2804.  
  2805. Ddd*menubar*fileMenu.open_class.labelString: Open Class...
  2806. Ddd*menubar*fileMenu.open_class.mnemonic:    O
  2807. Ddd*menubar*fileMenu.open_class.accelerator:      ~Shift Ctrl<Key>O
  2808. Ddd*menubar*fileMenu.open_class.acceleratorText:  Ctrl+O
  2809. Ddd*menubar*fileMenu.open_class.documentationString:   \
  2810. @rm Open a class to be debugged
  2811.  
  2812. Ddd*menubar*fileMenu.recent.labelString: Open Recent
  2813. Ddd*menubar*fileMenu.recent.mnemonic:    R
  2814. Ddd*menubar*fileMenu.recent.documentationString:   \
  2815. @rm Reopen a program to be debugged
  2816.  
  2817. Ddd*menubar*fileMenu.open_core.labelString: Open Core Dump...
  2818. Ddd*menubar*fileMenu.open_core.mnemonic:    D
  2819. Ddd*menubar*fileMenu.open_core.documentationString:   \
  2820. @rm Open a file as core dump for examining memory and registers
  2821.  
  2822. Ddd*menubar*fileMenu.open_source.labelString: Open Source...
  2823. Ddd*menubar*fileMenu.open_source.mnemonic:    S
  2824. Ddd*menubar*fileMenu.open_source.documentationString:   \
  2825. @rm Open a source file in the source window
  2826.  
  2827. Ddd*menubar*fileMenu.open_session.labelString:            Open Session...
  2828. Ddd*menubar*fileMenu.open_session.mnemonic:            n
  2829. Ddd*menubar*fileMenu.open_session.accelerator:          ~Shift Ctrl<Key>N
  2830. Ddd*menubar*fileMenu.open_session.acceleratorText:      Ctrl+N
  2831. Ddd*menubar*fileMenu.open_session.documentationString:  \
  2832. @rm Restore a previously saved DDD session
  2833.  
  2834. Ddd*menubar*fileMenu.save_session.labelString:            Save Session As...
  2835. Ddd*menubar*fileMenu.save_session.accelerator:          ~Shift Ctrl<Key>S
  2836. Ddd*menubar*fileMenu.save_session.acceleratorText:      Ctrl+S
  2837. Ddd*menubar*fileMenu.save_session.mnemonic:            v
  2838. Ddd*menubar*fileMenu.save_session.documentationString:  \
  2839. @rm Save this DDD session for resuming later
  2840.  
  2841. Ddd*menubar*fileMenu.attach.labelString: Attach to Process...
  2842. Ddd*menubar*fileMenu.attach.mnemonic:    A
  2843. ! Ddd*menubar*fileMenu.attach.accelerator:      ~Shift Ctrl<Key>Z
  2844. ! Ddd*menubar*fileMenu.attach.acceleratorText:  Ctrl+Z
  2845. Ddd*menubar*fileMenu.attach.documentationString:   \
  2846. @rm Attach to a process outside of DDD
  2847.  
  2848. Ddd*menubar*fileMenu.detach.labelString:       Detach Process
  2849. Ddd*menubar*fileMenu.detach.mnemonic:           t
  2850. ! Ddd*menubar*fileMenu.detach.accelerator:       Shift Ctrl<Key>Z
  2851. ! Ddd*menubar*fileMenu.detach.acceleratorText:   Shift+Ctrl+Z
  2852. Ddd*menubar*fileMenu.detach.documentationString:
  2853.  
  2854. Ddd*menubar*fileMenu.print.labelString:         Print Graph...
  2855. Ddd*menubar*fileMenu.print.mnemonic:         P
  2856. Ddd*menubar*fileMenu.print.accelerator:         ~Shift Ctrl<Key>P
  2857. Ddd*menubar*fileMenu.print.acceleratorText:     Ctrl+P
  2858. Ddd*menubar*fileMenu.print.documentationString:   \
  2859. @rm Print the contents of the data display
  2860.  
  2861. Ddd*menubar*fileMenu.printAgain.labelString:         Print Again
  2862. Ddd*menubar*fileMenu.printAgain.mnemonic:         g
  2863. Ddd*menubar*fileMenu.printAgain.documentationString:   \
  2864. @rm Print the contents of the data display, using previous settings
  2865.  
  2866. Ddd*menubar*fileMenu.cd.labelString:     Change Directory...
  2867. Ddd*menubar*fileMenu.cd.mnemonic:     i
  2868. Ddd*menubar*fileMenu.cd.documentationString:  \
  2869. @rm Change the current directory
  2870.  
  2871. Ddd*menubar*fileMenu.make.labelString:     Make...
  2872. Ddd*menubar*fileMenu.make.mnemonic:     M
  2873. Ddd*menubar*fileMenu.make.accelerator:      ~Shift Ctrl<Key>M
  2874. Ddd*menubar*fileMenu.make.acceleratorText:  Ctrl+M
  2875. Ddd*menubar*fileMenu.make.documentationString:  \
  2876. @rm Run the make program
  2877.  
  2878. Ddd*menubar*fileMenu.makeAgain.labelString:     Make Again
  2879. Ddd*menubar*fileMenu.makeAgain.mnemonic:     i
  2880. Ddd*menubar*fileMenu.makeAgain.accelerator:      Shift Ctrl<Key>M
  2881. Ddd*menubar*fileMenu.makeAgain.acceleratorText:  Shift+Ctrl+M
  2882. Ddd*menubar*fileMenu.makeAgain.documentationString:  \
  2883. @rm Run the make program with the most recently given arguments
  2884.  
  2885. Ddd*menubar*fileMenu.close.labelString:     Close
  2886. Ddd*menubar*fileMenu.close.mnemonic:     C
  2887. Ddd*menubar*fileMenu.close.accelerator:      ~Shift Ctrl<Key>W
  2888. Ddd*menubar*fileMenu.close.acceleratorText:  Ctrl+W
  2889. Ddd*menubar*fileMenu.close.documentationString:   \
  2890. @rm Close this window
  2891.  
  2892. Ddd*menubar*fileMenu.restart.labelString: Restart
  2893. Ddd*menubar*fileMenu.restart.mnemonic:     e
  2894. Ddd*menubar*fileMenu.restart.accelerator:      Shift Ctrl<Key>Q
  2895. ! Ddd*menubar*fileMenu.restart.acceleratorText:  Shift+Ctrl+Q
  2896. Ddd*menubar*fileMenu.restart.documentationString:   \
  2897. @rm Close all windows and restart DDD from scratch
  2898.  
  2899. Ddd*menubar*fileMenu.exit.labelString:     Exit
  2900. Ddd*menubar*fileMenu.exit.mnemonic:     x
  2901. Ddd*menubar*fileMenu.exit.accelerator:        ~Shift Ctrl<Key>Q
  2902. Ddd*menubar*fileMenu.exit.acceleratorText:  Ctrl+Q
  2903. Ddd*menubar*fileMenu.exit.documentationString:   \
  2904. @rm Close all windows and exit DDD
  2905.  
  2906.  
  2907. ! Recent menu
  2908. Ddd*menubar*recentMenu.r1.mnemonic: 1
  2909. Ddd*menubar*recentMenu.r2.mnemonic: 2
  2910. Ddd*menubar*recentMenu.r3.mnemonic: 3
  2911. Ddd*menubar*recentMenu.r4.mnemonic: 4
  2912. Ddd*menubar*recentMenu.r5.mnemonic: 5
  2913. Ddd*menubar*recentMenu.r6.mnemonic: 6
  2914. Ddd*menubar*recentMenu.r7.mnemonic: 7
  2915. Ddd*menubar*recentMenu.r8.mnemonic: 8
  2916. Ddd*menubar*recentMenu.r9.mnemonic: 9
  2917.  
  2918. ! Get the file names dynamically
  2919. Ddd*menubar*recentMenu*documentationString: 
  2920.  
  2921. ! Don't auto-raise this one
  2922. Ddd*menubar*popup_recentMenu*autoRaiseMenu: off
  2923.  
  2924.  
  2925. ! Edit menu
  2926. Ddd*menubar.edit.labelString:        Edit
  2927. Ddd*menubar.edit.mnemonic:        E
  2928. Ddd*menubar.edit*documentationString:    \
  2929. @rm Cut, copy, paste from and to the clipboard
  2930.  
  2931.  
  2932. Ddd*menubar.edit*helpString: \
  2933. @bs Edit Menu@rm \n\
  2934. \n\
  2935. @tt \267 @bf Cut@rm  @tt -@rm  remove the selected text to the clipboard.\n\
  2936. @tt \267 @bf Copy@rm  @tt -@rm  copy the selected text to the clipboard\n\
  2937.     without removing the original.\n\
  2938. @tt \267 @bf Paste@rm  @tt -@rm  paste the clipboard contents into the text.\n\
  2939. @tt \267 @bf Clear@rm  @tt -@rm  clear argument fields and @GDB@ command line.\n\
  2940. @tt \267 @bf Delete@rm  @tt -@rm  delete the selected text.\n\
  2941. \n\
  2942. @tt \267 @bf Preferences...@rm  @tt -@rm  invokes a panel for setting DDD options.\n\
  2943. @tt \267 @bf Settings...@rm  @tt -@rm  invokes a panel for setting @GDB@ options.\n\
  2944. \n\
  2945. @tt \267 @bf Save Options@rm  @tt -@rm  saves options, preferences, and @GDB@ settings\n\
  2946.     for the next DDD invocation..
  2947.  
  2948. Ddd*editMenu*helpString:     \
  2949. @bs Edit Menu@rm \n\
  2950. \n\
  2951. @tt \267 @bf Cut@rm  @tt -@rm  remove the selected text to the clipboard.\n\
  2952. @tt \267 @bf Copy@rm  @tt -@rm  copy the selected text to the clipboard\n\
  2953.     without removing the original.\n\
  2954. @tt \267 @bf Paste@rm  @tt -@rm  paste the clipboard contents into the text.\n\
  2955. @tt \267 @bf Clear@rm  @tt -@rm  clear argument fields and @GDB@ command line.\n\
  2956. @tt \267 @bf Delete@rm  @tt -@rm  delete the selected text.\n\
  2957. \n\
  2958. @tt \267 @bf Preferences...@rm  @tt -@rm  invokes a panel for setting DDD options.\n\
  2959. @tt \267 @bf Settings...@rm  @tt -@rm  invokes a panel for setting @GDB@ options.\n\
  2960. \n\
  2961. @tt \267 @bf Save Options@rm  @tt -@rm  saves options, preferences, and @GDB@ settings\n\
  2962.     for the next DDD invocation..
  2963.  
  2964. Ddd*editMenu*tearOffTitle:   Edit
  2965.  
  2966. ! Have standard Motif bindings
  2967. ! Ddd*editMenu.cut.accelerator:        Shift<Key>Delete
  2968. ! Ddd*editMenu.cut.acceleratorText:    Shift+Del
  2969. ! Ddd*editMenu.copy.accelerator:      Ctrl<Key>Insert
  2970. ! Ddd*editMenu.copy.acceleratorText:    Ctrl+Ins
  2971. ! Ddd*editMenu.paste.accelerator:      Shift<Key>Insert
  2972. ! Ddd*editMenu.paste.acceleratorText:    Shift+Ins
  2973.  
  2974. ! Alternative, KDE-like bindings
  2975. ! Ddd*editMenu.cut.accelerator:                ~Shift Ctrl<Key>X
  2976. ! Ddd*editMenu.cut.acceleratorText:            Ctrl+X
  2977. ! Ddd*editMenu.copy.accelerator:            ~Shift Ctrl<Key>C
  2978. ! Ddd*editMenu.copy.acceleratorText:            Ctrl+C
  2979. ! Ddd*editMenu.paste.accelerator:            ~Shift Ctrl<Key>V
  2980. ! Ddd*editMenu.paste.acceleratorText:            Ctrl+V
  2981.  
  2982.  
  2983. Ddd*editMenu.cut.labelString:                Cut
  2984. Ddd*editMenu.cut.mnemonic:                t
  2985. Ddd*editMenu.cut.documentationString: \
  2986. @rm Cut the selection and put it on the clipboard
  2987.  
  2988. Ddd*editMenu.copy.labelString:                Copy
  2989. Ddd*editMenu.copy.mnemonic:                C
  2990. Ddd*editMenu.copy.documentationString: \
  2991. @rm Copy the selection and put it on the clipboard
  2992.  
  2993. Ddd*editMenu.paste.labelString:                Paste
  2994. Ddd*editMenu.paste.mnemonic:                P
  2995. Ddd*editMenu.paste.documentationString: \
  2996. @rm Paste clipboard contents
  2997.  
  2998. Ddd*editMenu.clearAll.labelString:            Clear
  2999. Ddd*editMenu.clearAll.mnemonic:                l
  3000. Ddd*editMenu.clearAll.documentationString: \
  3001. @rm Clear the selection, all arguments, and the @GDB@ command line
  3002. Ddd*editMenu.clearAll.acceleratorText:            Ctrl+U
  3003.  
  3004. Ddd*editMenu.delete.labelString:            Delete
  3005. Ddd*editMenu.delete.mnemonic:                D
  3006. Ddd*editMenu.delete.documentationString: \
  3007. @rm Delete current selection
  3008.  
  3009. Ddd*editMenu.selectAll.labelString:            Select All
  3010. Ddd*editMenu.selectAll.mnemonic:            A
  3011. Ddd*editMenu.selectAll.acceleratorText:            Ctrl+A
  3012. Ddd*editMenu.selectAll.documentationString: \
  3013. @rm Select all items
  3014.  
  3015. Ddd*editMenu.preferences.labelString:            Preferences...
  3016. Ddd*editMenu.preferences.mnemonic:            r
  3017. Ddd*editMenu.preferences.documentationString:\
  3018. @rm Modify the DDD configuration
  3019.  
  3020. ! Note: The debugger name will be prepended to this label:
  3021. Ddd*editMenu.settings.labelString:            Settings...
  3022. Ddd*editMenu.settings.mnemonic:                S
  3023. Ddd*editMenu.settings.documentationString:\
  3024. @rm Modify the @GDB@ configuration
  3025.  
  3026. Ddd*editMenu.saveOptions.labelString:            Save Options
  3027. Ddd*editMenu.saveOptions.mnemonic:            O
  3028. Ddd*editMenu.saveOptions.documentationString:\
  3029. @rm Save preferences and settings for the next DDD invocation
  3030.  
  3031.  
  3032. ! View menu (for single-window DDD)
  3033. Ddd*menubar.views.labelString:        View
  3034. Ddd*menubar.views.mnemonic:        V
  3035. Ddd*menubar.view*documentationString:    \
  3036. @rm Open and close DDD windows
  3037.  
  3038.  
  3039. Ddd*menubar.views.helpString:    \
  3040. @bs View Menu@rm \n\
  3041. \n\
  3042. @tt \267 @bf Command Tool...@rm  @tt -@rm  open and recenter the command tool.\n\
  3043. @tt \267 @bf Execution Window...@rm  @tt -@rm  open the execution window.\n\
  3044. \n\
  3045. @tt \267 @bf @GDB@ Console@rm  @tt -@rm  toggle display of debugger console.\n\
  3046. @tt \267 @bf Source Window@rm  @tt -@rm  toggle display of program source.\n\
  3047. @tt \267 @bf Data Window@rm  @tt -@rm  toggle display of program data.\n\
  3048. @tt \267 @bf Code Window@rm  @tt -@rm  toggle display of assembler code.
  3049.  
  3050. Ddd*viewsMenu*helpString:    \
  3051. @bs View Menu@rm \n\
  3052. \n\
  3053. @tt \267 @bf Command Tool...@rm  @tt -@rm  open and recenter the command tool.\n\
  3054. @tt \267 @bf Execution Window...@rm  @tt -@rm  open the execution window.\n\
  3055. \n\
  3056. @tt \267 @bf @GDB@ Console@rm  @tt -@rm  toggle display of debugger console.\n\
  3057. @tt \267 @bf Source Window@rm  @tt -@rm  toggle display of program source.\n\
  3058. @tt \267 @bf Data Window@rm  @tt -@rm  toggle display of program data.\n\
  3059. @tt \267 @bf Code Window@rm  @tt -@rm  toggle display of assembler code.
  3060.  
  3061. Ddd*viewsMenu*tearOffTitle:     View
  3062.  
  3063. Ddd*viewsMenu.tool.labelString:            Command Tool...
  3064. Ddd*viewsMenu.tool.mnemonic:            T
  3065. Ddd*viewsMenu.tool.acceleratorText:        Alt+8
  3066. Ddd*viewsMenu.tool.accelerator:            Meta<Key>8
  3067. Ddd*viewsMenu.tool.documentationString: \
  3068. @rm Open the command tool and move it to its original position
  3069.  
  3070. Ddd*viewsMenu.exec.labelString:            Execution Window...
  3071. Ddd*viewsMenu.exec.mnemonic:            x
  3072. Ddd*viewsMenu.exec.acceleratorText:        Alt+9
  3073. Ddd*viewsMenu.exec.accelerator:            Meta<Key>9
  3074. Ddd*viewsMenu.exec.documentationString: \
  3075. @rm Open the program execution window
  3076.  
  3077. Ddd*viewsMenu.console.labelString:        @GDB@ Console
  3078. Ddd*viewsMenu.console.mnemonic:            C
  3079. Ddd*viewsMenu.console.acceleratorText:        Alt+1
  3080. Ddd*viewsMenu.console.accelerator:        Meta<Key>1
  3081. Ddd*viewsMenu.console.documentationString: \
  3082. @rm Toggle showing the @GDB@ console
  3083.  
  3084. Ddd*viewsMenu.source.labelString:        Source Window
  3085. Ddd*viewsMenu.source.mnemonic:            S
  3086. Ddd*viewsMenu.source.acceleratorText:        Alt+2
  3087. Ddd*viewsMenu.source.accelerator:        Meta<Key>2
  3088. Ddd*viewsMenu.source.documentationString: \
  3089. @rm Toggle showing the source window
  3090.  
  3091. Ddd*viewsMenu.data.labelString:            Data Window
  3092. Ddd*viewsMenu.data.mnemonic:            D
  3093. Ddd*viewsMenu.data.acceleratorText:        Alt+3
  3094. Ddd*viewsMenu.data.accelerator:            Meta<Key>3
  3095. Ddd*viewsMenu.data.documentationString: \
  3096. @rm Toggle showing the data window
  3097.  
  3098. Ddd*viewsMenu.code.labelString:            Machine Code Window
  3099. Ddd*viewsMenu.code.mnemonic:            M
  3100. Ddd*viewsMenu.code.acceleratorText:        Alt+4
  3101. Ddd*viewsMenu.code.accelerator:            Meta<Key>4
  3102. Ddd*viewsMenu.code.documentationString: \
  3103. @rm Toggle showing the machine code window
  3104.  
  3105.  
  3106. ! View menu (for multi-window DDD)
  3107. Ddd*menubar.view.labelString:        View
  3108. Ddd*menubar.view.mnemonic:        V
  3109. Ddd*menubar.view*documentationString:    \
  3110. @rm Open DDD windows
  3111.  
  3112.  
  3113. Ddd*menubar.view.helpString:    \
  3114. \
  3115. @bs View Menu@rm \n\
  3116. \n\
  3117. @tt \267 @bf Command Tool...@rm  @tt -@rm  open and recenter the command tool.\n\
  3118. @tt \267 @bf Execution Window...@rm  @tt -@rm  open the execution window.\n\
  3119. \n\
  3120. @tt \267 @bf @GDB@ Console...@rm  @tt -@rm  open the debugger console window.\n\
  3121. @tt \267 @bf Source Window...@rm  @tt -@rm  open the program source window.\n\
  3122. @tt \267 @bf Data Window...@rm  @tt -@rm  open the program data window.
  3123.  
  3124. Ddd*viewMenu*helpString:    \
  3125. \
  3126. @bs View Menu@rm \n\
  3127. \n\
  3128. @tt \267 @bf Command Tool...@rm  @tt -@rm  open and recenter the command tool.\n\
  3129. @tt \267 @bf Execution Window...@rm  @tt -@rm  open the execution window.\n\
  3130. \n\
  3131. @tt \267 @bf @GDB@ Console...@rm  @tt -@rm  open the debugger console window.\n\
  3132. @tt \267 @bf Source Window...@rm  @tt -@rm  open the program source window.\n\
  3133. @tt \267 @bf Data Window...@rm  @tt -@rm  open the program data window.
  3134.  
  3135. Ddd*viewMenu*tearOffTitle:      View
  3136.  
  3137. Ddd*viewMenu.tool.labelString:            Command Tool...
  3138. Ddd*viewMenu.tool.mnemonic:            T
  3139. Ddd*viewMenu.tool.acceleratorText:        Alt+8
  3140. Ddd*viewMenu.tool.accelerator:            Meta<Key>8
  3141. Ddd*viewMenu.tool.documentationString: \
  3142. @rm Open the command tool and move it to its original position
  3143.  
  3144. Ddd*viewMenu.exec.labelString:            Execution Window...
  3145. Ddd*viewMenu.exec.mnemonic:            x
  3146. Ddd*viewMenu.exec.acceleratorText:        Alt+9
  3147. Ddd*viewMenu.exec.accelerator:            Meta<Key>9
  3148. Ddd*viewMenu.exec.documentationString: \
  3149. @rm Open the program execution window
  3150.  
  3151. Ddd*viewMenu.console.labelString:        @GDB@ Console...
  3152. Ddd*viewMenu.console.mnemonic:            C
  3153. Ddd*viewMenu.console.acceleratorText:        Alt+1
  3154. Ddd*viewMenu.console.accelerator:        Meta<Key>1
  3155. Ddd*viewMenu.console.documentationString: \
  3156. @rm Open the @GDB@ console
  3157.  
  3158. Ddd*viewMenu.source.labelString:        Source Window...
  3159. Ddd*viewMenu.source.mnemonic:            S
  3160. Ddd*viewMenu.source.acceleratorText:        Alt+2
  3161. Ddd*viewMenu.source.accelerator:        Meta<Key>2
  3162. Ddd*viewMenu.source.documentationString: \
  3163. @rm Open the source window
  3164.  
  3165. Ddd*viewMenu.data.labelString:            Data Window...
  3166. Ddd*viewMenu.data.mnemonic:            D
  3167. Ddd*viewMenu.data.acceleratorText:        Alt+3
  3168. Ddd*viewMenu.data.accelerator:            Meta<Key>3
  3169. Ddd*viewMenu.data.documentationString: \
  3170. @rm Open the data window
  3171.  
  3172.  
  3173. ! Program menu
  3174. Ddd*menubar.program.labelString:        Program
  3175. Ddd*menubar.program.mnemonic:            P
  3176. Ddd*menubar.program*documentationString:    \
  3177. @rm Control the execution of the debugged program
  3178.  
  3179.  
  3180. Ddd*menubar.program*helpString:    \
  3181. \
  3182. @bs Program Menu@rm \n\
  3183. \n\
  3184. @tt \267 @bf Run...@rm  @tt -@rm  start the debugged program.\n\
  3185. @tt \267 @bf Run Again@rm  @tt -@rm  run with current arguments.\n\
  3186. \n\
  3187. @tt \267 @rm If @bf Run in Execution Window@rm  is set, \
  3188. the program is run in a separate\n\
  3189.     terminal window; useful for programs using terminal I/O.  Otherwise,\n\
  3190.     the program is run in the @GDB@ console window.\n\
  3191.     This change takes effect the next time the program is run.\n\
  3192. \n\
  3193. @tt \267 @bf Step@rm  @tt -@rm  step program until it reaches a different source line.\n\
  3194. @tt \267 @bf Step Instruction@rm  @tt -@rm  step exactly one machine instruction.\n\
  3195. @tt \267 @bf Next@rm  @tt -@rm  step program, but proceed through subroutine calls.\n\
  3196. @tt \267 @bf Next Instruction@rm  @tt -@rm  step instruction, \
  3197. but proceed through subroutine calls.\n\
  3198. @tt \267 @bf Until@rm  @tt -@rm  execute until program reaches a line after the current.\n\
  3199. @tt \267 @bf Finish@rm  @tt -@rm  execute until function returns.\n\
  3200. \n\
  3201. @tt \267 @bf Continue@rm  @tt -@rm  continue program after signal or breakpoint.\n\
  3202. @tt \267 @bf Continue Without Signal@rm  @tt -@rm  continue, but don't give a signal.\n\
  3203. \n\
  3204. @tt \267 @bf Kill@rm  @tt -@rm  kill execution of program being debugged.\n\
  3205. @tt \267 @bf Interrupt@rm  @tt -@rm  interrupt program (or current @GDB@ command).\n\
  3206. @tt \267 @bf Abort@rm  @tt -@rm  abort program (or current @GDB@ command).
  3207.  
  3208. Ddd*programMenu*helpString:    \
  3209. \
  3210. @bs Program Menu@rm \n\
  3211. \n\
  3212. @tt \267 @bf Run...@rm  @tt -@rm  start the debugged program.\n\
  3213. @tt \267 @bf Run Again@rm  @tt -@rm  run with current arguments.\n\
  3214. \n\
  3215. @tt \267 @rm If @bf Run in Execution Window@rm  is set, \
  3216. the program is run in a separate\n\
  3217.     terminal window; useful for programs using terminal I/O.  Otherwise,\n\
  3218.     the program is run in the @GDB@ console window.\n\
  3219.     This change takes effect the next time the program is run.\n\
  3220. \n\
  3221. @tt \267 @bf Step@rm  @tt -@rm  step program until it reaches a different source line.\n\
  3222. @tt \267 @bf Step Instruction@rm  @tt -@rm  step exactly one machine instruction.\n\
  3223. @tt \267 @bf Next@rm  @tt -@rm  step program, but proceed through subroutine calls.\n\
  3224. @tt \267 @bf Next Instruction@rm  @tt -@rm  step instruction, \
  3225. but proceed through subroutine calls.\n\
  3226. @tt \267 @bf Until@rm  @tt -@rm  execute until program reaches a line after the current.\n\
  3227. @tt \267 @bf Finish@rm  @tt -@rm  execute until function returns.\n\
  3228. \n\
  3229. @tt \267 @bf Continue@rm  @tt -@rm  continue program after signal or breakpoint.\n\
  3230. @tt \267 @bf Continue Without Signal@rm  @tt -@rm  continue, but don't give a signal.\n\
  3231. \n\
  3232. @tt \267 @bf Kill@rm  @tt -@rm  kill execution of program being debugged.\n\
  3233. @tt \267 @bf Interrupt@rm  @tt -@rm  interrupt program (or current @GDB@ command).\n\
  3234. @tt \267 @bf Abort@rm  @tt -@rm  abort program (or current @GDB@ command).
  3235.  
  3236. Ddd*programMenu*tearOffTitle:   Program
  3237.  
  3238. Ddd*menubar*programMenu.run.labelString:       Run...
  3239. Ddd*menubar*programMenu.run.mnemonic:           R
  3240. Ddd*menubar*programMenu.run.accelerator:       ~Shift Ctrl<Key>E
  3241. Ddd*menubar*programMenu.run.acceleratorText:       Ctrl+E
  3242. Ddd*menubar*programMenu.run.documentationString: \
  3243. @rm Start debugged program.  You may specify arguments to give it.
  3244.  
  3245. Ddd*menubar*programMenu.run_again.labelString:       Run Again
  3246. Ddd*menubar*programMenu.run_again.mnemonic:       A
  3247. Ddd*menubar*programMenu.run_again.accelerator:       Shift Ctrl<Key>E
  3248. Ddd*menubar*programMenu.run_again.acceleratorText: Shift+Ctrl+E
  3249. Ddd*menubar*programMenu.run_again.documentationString: \
  3250. @rm Restart debugged program, using the previous arguments.
  3251.  
  3252. Ddd*menubar*programMenu.separateExecWindow.labelString:    Run in Execution Window
  3253. Ddd*menubar*programMenu.separateExecWindow.mnemonic:    E
  3254. Ddd*menubar*programMenu*separateExecWindow.accelerator:    ~Shift Meta<Key>E
  3255. Ddd*menubar*programMenu*separateExecWindow.acceleratorText: Alt+E
  3256. Ddd*menubar*programMenu.separateExecWindow.documentationString:\
  3257. @rm Toggle execution of debugged program in separate window
  3258.  
  3259. Ddd*menubar*programMenu.step.labelString:       Step
  3260. Ddd*menubar*programMenu.step.mnemonic:           S
  3261. Ddd*menubar*programMenu.step.accelerator:       ~Shift Ctrl<Key>I
  3262. Ddd*menubar*programMenu.step.acceleratorText:       Ctrl+I
  3263. Ddd*menubar*programMenu.step.documentationString:
  3264.  
  3265. Ddd*menubar*programMenu.stepi.labelString:       Step Instruction
  3266. Ddd*menubar*programMenu.stepi.mnemonic:           I
  3267. Ddd*menubar*programMenu.stepi.accelerator:       Shift Ctrl<Key>I
  3268. Ddd*menubar*programMenu.stepi.acceleratorText:       Shift+Ctrl+I
  3269. Ddd*menubar*programMenu.stepi.documentationString:
  3270.  
  3271. Ddd*menubar*programMenu.next.labelString:       Next
  3272. Ddd*menubar*programMenu.next.mnemonic:           N
  3273. Ddd*menubar*programMenu.next.accelerator:       ~Shift Ctrl<Key>J
  3274. Ddd*menubar*programMenu.next.acceleratorText:       Ctrl+J
  3275. Ddd*menubar*programMenu.next.documentationString:
  3276.  
  3277. Ddd*menubar*programMenu.nexti.labelString:       Next Instruction
  3278. Ddd*menubar*programMenu.nexti.mnemonic:           x
  3279. Ddd*menubar*programMenu.nexti.accelerator:       Shift Ctrl<Key>J
  3280. Ddd*menubar*programMenu.nexti.acceleratorText:       Shift+Ctrl+J
  3281. Ddd*menubar*programMenu.nexti.documentationString:
  3282.  
  3283. Ddd*menubar*programMenu.cont.labelString:       Continue
  3284. Ddd*menubar*programMenu.cont.mnemonic:           C
  3285. Ddd*menubar*programMenu.cont.accelerator:       ~Shift Ctrl<Key>O
  3286. Ddd*menubar*programMenu.cont.acceleratorText:       Ctrl+T
  3287. Ddd*menubar*programMenu.cont.documentationString:
  3288.  
  3289. Ddd*menubar*programMenu.signal0.labelString:       Continue Without Signal
  3290. Ddd*menubar*programMenu.signal0.mnemonic:          t
  3291. Ddd*menubar*programMenu.signal0.accelerator:       Shift Ctrl<Key>T
  3292. Ddd*menubar*programMenu.signal0.acceleratorText:   Shift+Ctrl+T
  3293. Ddd*menubar*programMenu.signal0.documentationString: \
  3294. @rm Continue program without giving it a signal.
  3295.  
  3296. Ddd*menubar*programMenu.finish.labelString:       Finish
  3297. Ddd*menubar*programMenu.finish.mnemonic:       F
  3298. Ddd*menubar*programMenu.finish.accelerator:       Ctrl<Key>bracketright
  3299. Ddd*menubar*programMenu.finish.acceleratorText:       Ctrl+\135
  3300. Ddd*menubar*programMenu.finish.documentationString:
  3301.  
  3302. Ddd*menubar*programMenu.until.labelString:       Until
  3303. Ddd*menubar*programMenu.until.mnemonic:              U
  3304. Ddd*menubar*programMenu.until.accelerator:       Ctrl<Key>bracketleft
  3305. Ddd*menubar*programMenu.until.acceleratorText:       Ctrl+\133
  3306. Ddd*menubar*programMenu.until.documentationString:
  3307.  
  3308. Ddd*menubar*programMenu.kill.labelString:       Kill
  3309. Ddd*menubar*programMenu.kill.mnemonic:           K
  3310. Ddd*menubar*programMenu.kill.accelerator:       Shift Ctrl<Key>K
  3311. Ddd*menubar*programMenu.kill.acceleratorText:       Shift+Ctrl+K
  3312. Ddd*menubar*programMenu.kill.documentationString:
  3313.  
  3314. Ddd*menubar*programMenu.break.labelString:       Interrupt
  3315. Ddd*menubar*programMenu.break.mnemonic:           p
  3316. ! Ddd*menubar*programMenu.break.accelerator:       <Key>Escape
  3317. Ddd*menubar*programMenu.break.acceleratorText:       Esc
  3318. Ddd*menubar*programMenu.break.documentationString: \
  3319. @rm Interrupt program (or current @GDB@ command)
  3320.  
  3321. Ddd*menubar*programMenu.quit.labelString:       Abort
  3322. Ddd*menubar*programMenu.quit.mnemonic:           b
  3323. Ddd*menubar*programMenu.quit.accelerator:       Ctrl<Key>\\ 
  3324. Ddd*menubar*programMenu.quit.acceleratorText:       Ctrl+\\ 
  3325. Ddd*menubar*programMenu.quit.documentationString: \
  3326. @rm Abort program (or current @GDB@ command)
  3327.  
  3328.  
  3329. ! Commands
  3330. Ddd*menubar.commands.labelString:    Commands
  3331. Ddd*menubar.commands.mnemonic:        C
  3332. Ddd*menubar.commands*documentationString: \
  3333. @rm Enter and modify @GDB@ commands
  3334.  
  3335.  
  3336. Ddd*menubar.commands*helpString:    \
  3337. \
  3338. @bs Commands Menu@rm \n\
  3339. \n\
  3340. @tt \267 @bf Command History...@rm  @tt -@rm  show all previous commands.\n\
  3341. \n\
  3342. @tt \267 @bf Previous@rm  @tt -@rm  show the previous command.\n\
  3343. @tt \267 @bf Next@rm  @tt -@rm  show the next command.\n\
  3344. \n\
  3345. @tt \267 @bf Search Previous@rm  @tt -@rm  do incremental search forward.\n\
  3346. @tt \267 @bf Search Next@rm  @tt -@rm  do incremental search backward.\n\
  3347. @tt \267 @bf Quit Search@rm  @tt -@rm  quit incremental search.\n\
  3348. \n\
  3349. @tt \267 @bf Complete@rm  @tt -@rm  complete the current command.\n\
  3350. @tt \267 @bf Apply@rm  @tt -@rm  execute the current command.\n\
  3351. \n\
  3352. @tt \267 @bf Clear Line@rm  @tt -@rm  clear @GDB@ command line.\n\
  3353. @tt \267 @bf Clear Window@rm  @tt -@rm  clear all before last @GDB@ prompt.\n\
  3354. \n\
  3355. @tt \267 @bf Edit Buttons...@rm  @tt -@rm  edit command buttons.
  3356.  
  3357. Ddd*commandsMenu*helpString:        \
  3358. \
  3359. @bs Commands Menu@rm \n\
  3360. \n\
  3361. @tt \267 @bf Command History...@rm  @tt -@rm  show all previous commands.\n\
  3362. \n\
  3363. @tt \267 @bf Previous@rm  @tt -@rm  show the previous command.\n\
  3364. @tt \267 @bf Next@rm  @tt -@rm  show the next command.\n\
  3365. \n\
  3366. @tt \267 @bf Search Previous@rm  @tt -@rm  do incremental search forward.\n\
  3367. @tt \267 @bf Search Next@rm  @tt -@rm  do incremental search backward.\n\
  3368. @tt \267 @bf Quit Search@rm  @tt -@rm  quit incremental search.\n\
  3369. \n\
  3370. @tt \267 @bf Complete@rm  @tt -@rm  complete the current command.\n\
  3371. @tt \267 @bf Apply@rm  @tt -@rm  execute the current command.\n\
  3372. \n\
  3373. @tt \267 @bf Clear Line@rm  @tt -@rm  clear @GDB@ command line.\n\
  3374. @tt \267 @bf Clear Window@rm  @tt -@rm  clear all before last @GDB@ prompt.\n\
  3375. \n\
  3376. @tt \267 @bf Edit Buttons...@rm  @tt -@rm  edit command buttons.
  3377.  
  3378. Ddd*commandsMenu*tearOffTitle:          Commands
  3379.  
  3380. Ddd*commandsMenu.history.labelString:            Command History...
  3381. Ddd*commandsMenu.history.mnemonic:            H
  3382. Ddd*commandsMenu.history.documentationString: \
  3383. @rm Show previous commands
  3384.  
  3385. Ddd*commandsMenu.prev.labelString:            Previous
  3386. Ddd*commandsMenu.prev.mnemonic:                P
  3387. ! Ddd*commandsMenu.prev.accelerator:            Ctrl<Key>P
  3388. Ddd*commandsMenu.prev.acceleratorText:            Up
  3389. Ddd*commandsMenu.prev.documentationString: \
  3390. @rm Get previous command
  3391.  
  3392. Ddd*commandsMenu.next.labelString:            Next
  3393. Ddd*commandsMenu.next.mnemonic:                N
  3394. ! Ddd*commandsMenu.next.accelerator:            Ctrl<Key>N
  3395. Ddd*commandsMenu.next.acceleratorText:          Down
  3396. Ddd*commandsMenu.next.documentationString: \
  3397. @rm Get next command
  3398.  
  3399. Ddd*commandsMenu.complete.labelString:            Complete
  3400. Ddd*commandsMenu.complete.mnemonic:            C
  3401. ! Ddd*commandsMenu.complete.accelerator:    ~Ctrl ~Shift ~Meta<Key>Tab
  3402. ! Ddd*commandsMenu.complete.accelerator:    Ctrl<Key>I
  3403. Ddd*commandsMenu.complete.acceleratorText:    Tab
  3404. Ddd*commandsMenu.complete.documentationString: \
  3405. @rm Complete current command
  3406.  
  3407. Ddd*commandsMenu.apply.labelString:            Apply
  3408. Ddd*commandsMenu.apply.mnemonic:            A
  3409. ! Ddd*commandsMenu.apply.accelerator:            ~Ctrl ~Shift ~Meta<Key>Return
  3410. Ddd*commandsMenu.apply.acceleratorText:         Return
  3411. Ddd*commandsMenu.apply.documentationString: \
  3412. @rm Execute current command
  3413.  
  3414. Ddd*commandsMenu.isearch_prev.labelString:    Find Backward
  3415. Ddd*commandsMenu.isearch_prev.mnemonic:            B
  3416. ! Ddd*commandsMenu.isearch_prev.accelerator:    Ctrl<Key>B
  3417. Ddd*commandsMenu.isearch_prev.acceleratorText:  Ctrl+B
  3418. Ddd*commandsMenu.isearch_prev.documentationString: \
  3419. @rm Do incremental search backward in command history
  3420.  
  3421. Ddd*commandsMenu.isearch_next.labelString:    Find Forward
  3422. Ddd*commandsMenu.isearch_next.mnemonic:            F
  3423. ! Ddd*commandsMenu.isearch_next.accelerator:    Ctrl<Key>F
  3424. Ddd*commandsMenu.isearch_next.acceleratorText:  Ctrl+F
  3425. Ddd*commandsMenu.isearch_next.documentationString: \
  3426. @rm Do incremental search forward in command history
  3427.  
  3428. Ddd*commandsMenu.isearch_exit.labelString:    Quit Search
  3429. Ddd*commandsMenu.isearch_exit.mnemonic:            Q
  3430. Ddd*commandsMenu.isearch_exit.acceleratorText:  Esc
  3431. Ddd*commandsMenu.isearch_exit.documentationString: \
  3432. @rm Quit incremental search
  3433.  
  3434. Ddd*commandsMenu.clear_line.labelString:        Clear Line
  3435. Ddd*commandsMenu.clear_line.mnemonic:            L
  3436. ! *commandsMenu.clear_line.accelerator:            ~Shift ~Meta Ctrl<Key>U
  3437. Ddd*commandsMenu.clear_line.acceleratorText:    Ctrl+U
  3438. Ddd*commandsMenu.clear_line.documentationString: \
  3439. @rm Clear @GDB@ command line
  3440.  
  3441. Ddd*commandsMenu.clear_window.labelString:      Clear Window
  3442. Ddd*commandsMenu.clear_window.mnemonic:            W
  3443. Ddd*commandsMenu.clear_window.accelerator:      ~Meta Shift Ctrl<Key>U
  3444. Ddd*commandsMenu.clear_window.acceleratorText:  Shift+Ctrl+U
  3445. Ddd*commandsMenu.clear_window.documentationString: \
  3446. @rm Clear all before last @GDB@ prompt
  3447.  
  3448. Ddd*commandsMenu.define.labelString:        Define Command...
  3449. Ddd*commandsMenu.define.mnemonic:            D
  3450. Ddd*commandsMenu.define.documentationString: \
  3451. @rm Define @GDB@ command
  3452.  
  3453. Ddd*commandsMenu.buttons.labelString:            Edit Buttons...
  3454. Ddd*commandsMenu.buttons.mnemonic:            u
  3455. Ddd*commandsMenu.buttons.documentationString: \
  3456. @rm Edit command buttons
  3457.  
  3458.  
  3459. ! Status
  3460. Ddd*menubar.stack.labelString:        Status
  3461. Ddd*menubar.stack.mnemonic:        t
  3462. Ddd*menubar.stack*documentationString:  \
  3463. @rm Show the current program state
  3464.  
  3465.  
  3466. Ddd*menubar.stack.helpString:    \
  3467. \
  3468. @bs Status Menu@rm \n\
  3469. \n\
  3470. @tt \267 @bf Backtrace...@rm  @tt -@rm  give a summary of how your program got where it is.\n\
  3471. @tt \267 @bf Registers...@rm  @tt -@rm  show current processor registers.\n\
  3472. @tt \267 @bf Threads...@rm  @tt -@rm  show current program threads.\n\
  3473. @tt \267 @bf Signals...@rm  @tt -@rm  show current signal handling.\n\
  3474. \n\
  3475. @tt \267 @bf Up@rm  @tt -@rm  show the function that called the current one.\n\
  3476. @tt \267 @bf Down@rm  @tt -@rm  show the function that was called by the current one.
  3477.  
  3478. Ddd*stackMenu*helpString:    \
  3479. \
  3480. @bs Status Menu@rm \n\
  3481. \n\
  3482. @tt \267 @bf Backtrace...@rm  @tt -@rm  give a summary of how your program got where it is.\n\
  3483. @tt \267 @bf Registers...@rm  @tt -@rm  show current processor registers.\n\
  3484. @tt \267 @bf Threads...@rm  @tt -@rm  show current program threads.\n\
  3485. @tt \267 @bf Signals...@rm  @tt -@rm  show current signal handling.\n\
  3486. \n\
  3487. @tt \267 @bf Up@rm  @tt -@rm  show the function that called the current one.\n\
  3488. @tt \267 @bf Down@rm  @tt -@rm  show the function that was called by the current one.
  3489.  
  3490. Ddd*stackMenu*tearOffTitle:     Status
  3491.  
  3492. Ddd*stackMenu.stack.labelString:    Backtrace...
  3493. Ddd*stackMenu.stack.mnemonic:        B
  3494. Ddd*stackMenu.stack.documentationString: \
  3495. @rm Give a summary of how the debugged program got where it is
  3496.  
  3497. Ddd*stackMenu.registers.labelString:    Registers...
  3498. Ddd*stackMenu.registers.mnemonic:    R
  3499. Ddd*stackMenu.registers.documentationString: \
  3500. @rm Show registers and their contents
  3501.  
  3502. Ddd*stackMenu.threads.labelString:    Threads...
  3503. Ddd*stackMenu.threads.mnemonic:        T
  3504. Ddd*stackMenu.threads.documentationString: \
  3505. @rm Show and select current program threads
  3506.  
  3507. Ddd*stackMenu.signals.labelString:    Signals...
  3508. Ddd*stackMenu.signals.mnemonic:        S
  3509. Ddd*stackMenu.signals.documentationString: \
  3510. @rm Show and edit current signal handling
  3511.  
  3512. Ddd*stackMenu.up.labelString:        Up
  3513. Ddd*stackMenu.up.mnemonic:        U
  3514. Ddd*stackMenu.up.accelerator:        Ctrl<Key>Up
  3515. Ddd*stackMenu.up.acceleratorText:    Ctrl+Up
  3516. Ddd*stackMenu.up.documentationString: \
  3517. @rm Show the function that called the current one
  3518.  
  3519. Ddd*stackMenu.down.labelString:        Down
  3520. Ddd*stackMenu.down.mnemonic:        D
  3521. Ddd*stackMenu.down.accelerator:        Ctrl<Key>Down
  3522. Ddd*stackMenu.down.acceleratorText:    Ctrl+Down
  3523. Ddd*stackMenu.down.documentationString: \
  3524. @rm Show the function that was called by the current one
  3525.  
  3526.  
  3527.  
  3528. ! Source menu
  3529. Ddd*menubar.source.labelString:        Source
  3530. Ddd*menubar.source.mnemonic:        S
  3531. Ddd*menubar.source*documentationString: \
  3532. @rm Set and edit breakpoints in source files
  3533.  
  3534.  
  3535. Ddd*menubar.source.helpString:    \
  3536. \
  3537. @bs Source Menu@rm \n\
  3538. \n\
  3539. @tt \267 @bf Edit Breakpoints...@rm  @tt -@rm  set, view, and edit breakpoints.\n\
  3540. \n\
  3541. @tt \267 @bf Lookup ()@rm  @tt -@rm  lookup @bf ()@rm  in the source.\n\
  3542. @tt \267 @bf @charset Find@small>> @charset()@rm @rm  @tt -@rm  find next occurrence of @bf ()@rm .\n\
  3543. @tt \267 @bf @charset Find@small<< @charset()@rm @rm  @tt -@rm  find previous occurrence of @bf ()@rm .\n\
  3544. \n\
  3545. @tt \267 @rm If @bf Find Words Only@rm  is set, \
  3546. only complete words are found.\n\
  3547.     Otherwise, arbitrary occurrences are found.\n\
  3548. @tt \267 @rm If @bf Find Case Sensitive@rm  is set, \
  3549. search is case-sensitive.\n\
  3550.     Otherwise, occurrences are found regardless of case.\n\
  3551. \n\
  3552. @tt \267 @rm If @bf Display Machine Code@rm  is set, the current function\n\
  3553.     is automatically disassembled.\n\
  3554. \n\
  3555. @tt \267 @bf Edit Source...@rm  @tt -@rm  invoke text editor for current source.\n\
  3556. @tt \267 @bf Reload Source @rm  @tt -@rm  reload current source file.\n\
  3557. \n\
  3558. @tt \267 @bf Back@rm  @tt -@rm  return to previous source position.\n\
  3559. @tt \267 @bf Forward@rm  @tt -@rm  move forward to next source position.
  3560.  
  3561. Ddd*sourceMenu.helpString:    \
  3562. \
  3563. @bs Source Menu@rm \n\
  3564. \n\
  3565. @tt \267 @bf Edit Breakpoints...@rm  @tt -@rm  set, view, and edit breakpoints.\n\
  3566. \n\
  3567. @tt \267 @bf Lookup ()@rm  @tt -@rm  lookup @bf ()@rm  in the source.\n\
  3568. @tt \267 @bf @charset Find@small>> @charset()@rm @rm  @tt -@rm  find next occurrence of @bf ()@rm .\n\
  3569. @tt \267 @bf @charset Find@small<< @charset()@rm @rm  @tt -@rm  find previous occurrence of @bf ()@rm .\n\
  3570. \n\
  3571. @tt \267 @rm If @bf Find Words Only@rm  is set, \
  3572. only complete words are found.\n\
  3573.     Otherwise, arbitrary occurrences are found.\n\
  3574. @tt \267 @rm If @bf Find Case Sensitive@rm  is set, \
  3575. search is case-sensitive.\n\
  3576.     Otherwise, occurrences are found regardless of case.\n\
  3577. \n\
  3578. @tt \267 @rm If @bf Display Machine Code@rm  is set, the current function\n\
  3579.     is automatically disassembled.\n\
  3580. \n\
  3581. @tt \267 @bf Edit Source...@rm  @tt -@rm  invoke text editor for current source.\n\
  3582. @tt \267 @bf Reload Source @rm  @tt -@rm  reload current source file.\n\
  3583. \n\
  3584. @tt \267 @bf Back@rm  @tt -@rm  return to previous source position.\n\
  3585. @tt \267 @bf Forward@rm  @tt -@rm  move forward to next source position.
  3586.  
  3587.  
  3588. Ddd*sourceMenu.breakpoints.labelString:        Edit Breakpoints...
  3589. Ddd*sourceMenu.breakpoints.mnemonic:        d
  3590. Ddd*sourceMenu.breakpoints.documentationString: \
  3591. @rm Set, view, and edit breakpoints
  3592.  
  3593. Ddd*sourceMenu.lookup.labelString:            Lookup ()
  3594. Ddd*sourceMenu.lookup.mnemonic:            L
  3595. Ddd*sourceMenu.lookup.accelerator:        Ctrl<Key>slash
  3596. Ddd*sourceMenu.lookup.acceleratorText:    Ctrl+/
  3597. Ddd*sourceMenu.lookup.documentationString:\
  3598. @rm Lookup @bf ()@rm  in the source
  3599.  
  3600. Ddd*sourceMenu.findForward.labelString:            @charset Find@small>> @charset()@rm 
  3601. ! Ddd*sourceMenu.findForward.mnemonic:        >
  3602. Ddd*sourceMenu.findForward.accelerator:        Ctrl<Key>period
  3603. Ddd*sourceMenu.findForward.acceleratorText:    Ctrl+.
  3604. Ddd*sourceMenu.findForward.documentationString:\
  3605. @rm Search the next occurrence of @bf ()@rm  in the source
  3606.  
  3607. Ddd*sourceMenu.findBackward.labelString:    @charset Find@small<< @charset()@rm 
  3608. ! Ddd*sourceMenu.findBackward.mnemonic:        <
  3609. Ddd*sourceMenu.findBackward.accelerator:    Ctrl<Key>comma
  3610. Ddd*sourceMenu.findBackward.acceleratorText:    Ctrl+,
  3611. Ddd*sourceMenu.findBackward.documentationString:\
  3612. @rm Search the previous occurrence of @bf ()@rm  in the source
  3613.  
  3614. Ddd*sourceMenu.findWordsOnly.labelString:    Find Words Only
  3615. Ddd*sourceMenu.findWordsOnly.mnemonic:        W
  3616. Ddd*sourceMenu.findWordsOnly.accelerator:    Meta<Key>W
  3617. Ddd*sourceMenu.findWordsOnly.acceleratorText:    Alt+W
  3618. Ddd*sourceMenu.findWordsOnly.documentationString:\
  3619. @rm Switch between finding complete words and finding arbitrary occurrences
  3620.  
  3621. Ddd*sourceMenu.findCaseSensitive.labelString:    Find Case Sensitive
  3622. Ddd*sourceMenu.findCaseSensitive.mnemonic:    i
  3623. Ddd*sourceMenu.findCaseSensitive.accelerator:    Meta<Key>I
  3624. Ddd*sourceMenu.findCaseSensitive.acceleratorText: Alt+I
  3625. Ddd*sourceMenu.findCaseSensitive.documentationString:\
  3626. @rm Toggle case-sensitive search
  3627.  
  3628. Ddd*sourceMenu.disassemble.labelString:        Display Machine Code
  3629. Ddd*sourceMenu.disassemble.mnemonic:        M
  3630. Ddd*sourceMenu.disassemble.accelerator:        Meta<Key>4
  3631. Ddd*sourceMenu.disassemble.acceleratorText:    Alt+4
  3632. Ddd*sourceMenu.disassemble.documentationString:\
  3633. @rm Toggle display of machine code window
  3634.  
  3635. Ddd*sourceMenu.edit.labelString:    Edit Source...
  3636. Ddd*sourceMenu.edit.mnemonic:        E
  3637. Ddd*sourceMenu.edit.accelerator:    ~Meta Shift Ctrl<Key>V
  3638. Ddd*sourceMenu.edit.acceleratorText:    Shift+Ctrl+V
  3639. Ddd*sourceMenu.edit.documentationString: \
  3640. @rm Invoke text editor for the current source
  3641.  
  3642. Ddd*sourceMenu.reload.labelString:    Reload Source
  3643. Ddd*sourceMenu.reload.mnemonic:        R
  3644. Ddd*sourceMenu.reload.accelerator:    ~Meta Shift Ctrl<Key>L
  3645. Ddd*sourceMenu.reload.acceleratorText:    Shift+Ctrl+L
  3646. Ddd*sourceMenu.reload.documentationString: \
  3647. @rm Reload current source file
  3648.  
  3649. Ddd*sourceMenu.back.labelString:    Back
  3650. Ddd*sourceMenu.back.mnemonic:        B
  3651. Ddd*sourceMenu.back.accelerator:    Ctrl<Key>Left
  3652. Ddd*sourceMenu.back.acceleratorText:    Ctrl+Left
  3653. Ddd*sourceMenu.back.documentationString: \
  3654. @rm Return to previous source position
  3655.  
  3656. Ddd*sourceMenu.forward.labelString:    Forward
  3657. Ddd*sourceMenu.forward.mnemonic:    F
  3658. Ddd*sourceMenu.forward.accelerator:    Ctrl<Key>Right
  3659. Ddd*sourceMenu.forward.acceleratorText:    Ctrl+Right
  3660. Ddd*sourceMenu.forward.documentationString: \
  3661. @rm Move forward to next source position
  3662.  
  3663.  
  3664. ! Data menu
  3665. Ddd*menubar.data.labelString:        Data
  3666. Ddd*menubar.data.mnemonic:        D
  3667. Ddd*menubar.data*documentationString:   \
  3668. @rm Create and modify data displays
  3669.  
  3670.  
  3671. Ddd*menubar.data*helpString:    \
  3672. \
  3673. @bs Data Menu@rm \n\
  3674. \n\
  3675. @tt \267 @bf Edit Displays...@rm  @tt -@rm  select, enable and delete displays.\n\
  3676. @tt \267 @bf Edit Watchpoints...@rm  @tt -@rm  set, view, and edit watchpoints.\n\
  3677. @tt \267 @bf Examine Memory...@rm  @tt -@rm  examine memory in any of several formats.\n\
  3678. \n\
  3679. @tt \267 @bf Print ()@rm  @tt -@rm  print @bf ()@rm  in @GDB@ console.\n\
  3680. @tt \267 @bf Display ()@rm  @tt -@rm  display @bf ()@rm  in data window.\n\
  3681. \n\
  3682. @tt \267 @bf Detect Aliases@rm  @tt -@rm  toggle alias detection.\n\
  3683. \n\
  3684. @tt \267 @bf Display Local Variables@rm  @tt -@rm  show current local variables.\n\
  3685. @tt \267 @bf Display Arguments@rm  @tt -@rm  show current argument variables.\n\
  3686. @tt \267 @bf More Status Displays...@rm  @tt -@rm  show other things about the \
  3687. debugged program.\n\
  3688. \n\
  3689. @tt \267 @bf Align on Grid@rm  @tt -@rm  align all displays on the next grid point.\n\
  3690. @tt \267 @bf Rotate Graph@rm  @tt -@rm  rotate the graph clockwise by 90 degrees.\n\
  3691. @tt \267 @bf Layout Graph@rm  @tt -@rm  layout the graph.\n\
  3692. \n\
  3693. @tt \267 @bf Select All@rm  @tt -@rm  select all displays.\n\
  3694. @tt \267 @bf Refresh@rm  @tt -@rm  update all displays.
  3695.  
  3696. Ddd*dataMenu*helpString:    \
  3697. \
  3698. @bs Data Menu@rm \n\
  3699. \n\
  3700. @tt \267 @bf Edit Displays...@rm  @tt -@rm  select, enable and delete displays.\n\
  3701. @tt \267 @bf Edit Watchpoints...@rm  @tt -@rm  set, view, and edit watchpoints.\n\
  3702. @tt \267 @bf Examine Memory...@rm  @tt -@rm  examine memory in any of several formats.\n\
  3703. \n\
  3704. @tt \267 @bf Print ()@rm  @tt -@rm  print @bf ()@rm  in @GDB@ console.\n\
  3705. @tt \267 @bf Display ()@rm  @tt -@rm  display @bf ()@rm  in data window.\n\
  3706. \n\
  3707. @tt \267 @bf Detect Aliases@rm  @tt -@rm  toggle alias detection.\n\
  3708. \n\
  3709. @tt \267 @bf Display Local Variables@rm  @tt -@rm  show current local variables.\n\
  3710. @tt \267 @bf Display Arguments@rm  @tt -@rm  show current argument variables.\n\
  3711. @tt \267 @bf More Status Displays...@rm  @tt -@rm  show other things about the \
  3712. debugged program.\n\
  3713. \n\
  3714. @tt \267 @bf Align on Grid@rm  @tt -@rm  align all displays on the next grid point.\n\
  3715. @tt \267 @bf Rotate Graph@rm  @tt -@rm  rotate the graph clockwise by 90 degrees.\n\
  3716. @tt \267 @bf Layout Graph@rm  @tt -@rm  layout the graph.\n\
  3717. \n\
  3718. @tt \267 @bf Select All@rm  @tt -@rm  select all displays.\n\
  3719. @tt \267 @bf Refresh@rm  @tt -@rm  update all displays.
  3720.  
  3721. Ddd*dataMenu*tearOffTitle:      Data
  3722.  
  3723. Ddd*dataMenu.displays.labelString:    Edit Displays...
  3724. Ddd*dataMenu.displays.mnemonic:        E
  3725. Ddd*dataMenu.displays.documentationString: \
  3726. @rm Select, enable and delete displays
  3727.  
  3728. Ddd*dataMenu.watchpoints.labelString:    Edit Watchpoints...
  3729. Ddd*dataMenu.watchpoints.mnemonic:    W
  3730. Ddd*dataMenu.watchpoints.documentationString: \
  3731. @rm Set, view, and edit watchpoints
  3732.  
  3733. Ddd*dataMenu.examine.labelString:    Examine Memory...
  3734. Ddd*dataMenu.examine.mnemonic:        x
  3735. Ddd*dataMenu.examine.documentationString: \
  3736. @rm Examine memory in any of several formats
  3737.  
  3738. Ddd*dataMenu.print.labelString:        Print ()
  3739. Ddd*dataMenu.print.mnemonic:        P
  3740. Ddd*dataMenu.print.accelerator:        Ctrl<Key>equal
  3741. Ddd*dataMenu.print.acceleratorText:    Ctrl+=
  3742. Ddd*dataMenu.print.documentationString: \
  3743. @rm Print the argument @bf ()@rm  in the @GDB@ console
  3744.  
  3745. Ddd*dataMenu.display.labelString:    Display ()
  3746. Ddd*dataMenu.display.mnemonic:        D
  3747. Ddd*dataMenu.display.accelerator:    Ctrl<Key>minus
  3748. Ddd*dataMenu.display.acceleratorText:    Ctrl+-
  3749. Ddd*dataMenu.display.documentationString: \
  3750. @rm Display the argument @bf ()@rm  in the data window
  3751.  
  3752. Ddd*dataMenu.detectAliases.labelString:    Detect Aliases
  3753. Ddd*dataMenu.detectAliases.mnemonic:    A
  3754. Ddd*dataMenu.detectAliases.accelerator:    Meta<Key>A
  3755. Ddd*dataMenu.detectAliases.acceleratorText: Alt+A
  3756. Ddd*dataMenu.detectAliases.documentationString:    \
  3757. @rm Detect aliases (shared data structures)
  3758.  
  3759. ! This item is visible in GDB only.
  3760. Ddd*dataMenu.info locals.labelString:    Display Local Variables
  3761. Ddd*dataMenu.info locals.mnemonic:    L
  3762. Ddd*dataMenu.info locals.accelerator:    Meta<Key>L
  3763. Ddd*dataMenu.info locals.acceleratorText: Alt+L
  3764. Ddd*dataMenu.info locals.documentationString: \
  3765. @rm Display the local variables of the current stack frame
  3766.  
  3767. ! This item is visible in GDB only.
  3768. Ddd*dataMenu.info args.labelString:    Display Arguments
  3769. Ddd*dataMenu.info args.mnemonic:    u
  3770. Ddd*dataMenu.info args.accelerator:    Meta<Key>U
  3771. Ddd*dataMenu.info args.acceleratorText: Alt+U
  3772. Ddd*dataMenu.info args.documentationString: \
  3773. @rm Display the argument variables of the current stack frame
  3774.  
  3775. ! This item is visible in DBX only.
  3776. Ddd*dataMenu.dump.labelString:        Display Local Variables
  3777. Ddd*dataMenu.dump.mnemonic:        L
  3778. Ddd*dataMenu.dump.accelerator:        Meta<Key>L
  3779. Ddd*dataMenu.dump.acceleratorText:    Alt+L
  3780. Ddd*dataMenu.dump.documentationString: \
  3781. @rm Display all local variables of the current stack frame
  3782.  
  3783. ! This item is visible in XDB only.
  3784. Ddd*dataMenu.l.labelString:        Display Local Variables
  3785. Ddd*dataMenu.l.mnemonic:        L
  3786. Ddd*dataMenu.l.accelerator:        Meta<Key>L
  3787. Ddd*dataMenu.l.acceleratorText:        Alt+L
  3788. Ddd*dataMenu.l.documentationString: \
  3789. @rm Display all local variables of the current stack frame
  3790.  
  3791. ! This item is visible in JDB only.
  3792. Ddd*dataMenu.locals.labelString:    Display Local Variables
  3793. Ddd*dataMenu.locals.mnemonic:        L
  3794. Ddd*dataMenu.locals.accelerator:    Meta<Key>L
  3795. Ddd*dataMenu.locals.acceleratorText:    Alt+L
  3796. Ddd*dataMenu.locals.documentationString: \
  3797. @rm Display all local variables of the current stack frame
  3798.  
  3799. Ddd*dataMenu.infos.labelString:        More Status Displays...
  3800. Ddd*dataMenu.infos.mnemonic:        M
  3801. Ddd*dataMenu.infos.documentationString: \
  3802. @rm Show various things about the program being debugged
  3803.  
  3804. Ddd*dataMenu.align.labelString:        Align on Grid
  3805. Ddd*dataMenu.align.mnemonic:        G
  3806. Ddd*dataMenu.align.accelerator:        Meta<Key>G
  3807. Ddd*dataMenu.align.acceleratorText:    Alt+G
  3808. Ddd*dataMenu.align.documentationString:    \
  3809. @rm Align all displays on the next grid point
  3810.  
  3811. Ddd*dataMenu.rotate.labelString:    Rotate Graph
  3812. Ddd*dataMenu.rotate.mnemonic:        R
  3813. Ddd*dataMenu.rotate.accelerator:    Meta<Key>R
  3814. Ddd*dataMenu.rotate.acceleratorText:    Alt+R
  3815. Ddd*dataMenu.rotate.documentationString:    \
  3816. @rm Rotate the graph clockwise by 90 degrees
  3817.  
  3818. Ddd*dataMenu.layout.labelString:    Layout Graph
  3819. Ddd*dataMenu.layout.mnemonic:        y
  3820. Ddd*dataMenu.layout.accelerator:    Meta<Key>Y
  3821. Ddd*dataMenu.layout.acceleratorText:    Alt+Y
  3822. Ddd*dataMenu.layout.documentationString:    \
  3823. @rm Layout the graph
  3824.  
  3825. Ddd*dataMenu.selectAll.labelString:    Select All
  3826. Ddd*dataMenu.selectAll.mnemonic:    S
  3827. ! Ddd*dataMenu.selectAll.accelerator:    Ctrl<Key>A
  3828. Ddd*dataMenu.selectAll.acceleratorText:    Ctrl+A
  3829. Ddd*dataMenu.selectAll.documentationString:    \
  3830. @rm Select all displays
  3831.  
  3832. Ddd*dataMenu.refresh.labelString:    Refresh
  3833. Ddd*dataMenu.refresh.mnemonic:        f
  3834. Ddd*dataMenu.refresh.accelerator:    ~Shift ~Meta Ctrl<Key>L
  3835. Ddd*dataMenu.refresh.acceleratorText:    Ctrl+L
  3836. Ddd*dataMenu.refresh.documentationString:    \
  3837. @rm Redraw all displays, using current values
  3838.  
  3839.  
  3840. ! Help menu
  3841. Ddd*menubar.help.labelString:        Help
  3842. Ddd*menubar.help.mnemonic:        H
  3843. Ddd*menubar.help*documentationString:   \
  3844. @rm Get more information
  3845.  
  3846.  
  3847. Ddd*menubar.help*helpString: \
  3848. \
  3849. @bs Help Menu@rm \n\
  3850. \n\
  3851. @tt \267 @bf Overview@rm  @tt -@rm  help on how to use the help facility.\n\
  3852. \n\
  3853. @tt \267 @bf On Item...@rm  @tt -@rm  give help on the current item.\n\
  3854. @tt \267 @bf On Window...@rm  @tt -@rm  help on the application itself.\n\
  3855. \n\
  3856. @tt \267 @bf What Now?...@rm  @tt -@rm  give help on what to do now.\n\
  3857. @tt \267 @bf Tip of the Day...@rm  @tt -@rm  give a useful tip on DDD usage.\n\
  3858. \n\
  3859. @tt \267 @bf DDD Reference...@rm  @tt -@rm  the DDD on-line manual.\n\
  3860. @tt \267 @bf DDD News...@rm  @tt -@rm  what's new in DDD.\n\
  3861. @tt \267 @bf @GDB@ Reference...@rm  @tt -@rm  the @GDB@ on-line manual.\n\
  3862. \n\
  3863. @tt \267 @bf DDD License...@rm  @tt -@rm  copying, distributing, and modifying DDD.\n\
  3864. @tt \267 @bf DDD WWW Page...@rm  @tt -@rm  the DDD WWW page.\n\
  3865. \n\
  3866. @tt \267 @bf About DDD...@rm  @tt -@rm  some general information about DDD.
  3867.  
  3868. Ddd*helpMenu*helpString:     \
  3869. \
  3870. @bs Help Menu@rm \n\
  3871. \n\
  3872. @tt \267 @bf Overview@rm  @tt -@rm  help on how to use the help facility.\n\
  3873. \n\
  3874. @tt \267 @bf On Item...@rm  @tt -@rm  give help on the current item.\n\
  3875. @tt \267 @bf On Window...@rm  @tt -@rm  help on the application itself.\n\
  3876. \n\
  3877. @tt \267 @bf What Now?...@rm  @tt -@rm  give help on what to do now.\n\
  3878. @tt \267 @bf Tip of the Day...@rm  @tt -@rm  give a useful tip on DDD usage.\n\
  3879. \n\
  3880. @tt \267 @bf DDD Reference...@rm  @tt -@rm  the DDD on-line manual.\n\
  3881. @tt \267 @bf DDD News...@rm  @tt -@rm  what's new in DDD.\n\
  3882. @tt \267 @bf @GDB@ Reference...@rm  @tt -@rm  the @GDB@ on-line manual.\n\
  3883. \n\
  3884. @tt \267 @bf DDD License...@rm  @tt -@rm  copying, distributing, and modifying DDD.\n\
  3885. @tt \267 @bf DDD WWW Page...@rm  @tt -@rm  the DDD WWW page.\n\
  3886. \n\
  3887. @tt \267 @bf About DDD...@rm  @tt -@rm  some general information about DDD.
  3888.  
  3889. Ddd*helpMenu*tearOffTitle:   Help
  3890.  
  3891. Ddd*helpMenu.onHelp.labelString:        Overview...
  3892. Ddd*helpMenu.onHelp.mnemonic:            v
  3893. Ddd*helpMenu.onHelp.documentationString:    \
  3894. @rm How to use the help facility
  3895.  
  3896. Ddd*helpMenu.onItem.labelString:        On Item...
  3897. Ddd*helpMenu.onItem.mnemonic:            O
  3898. Ddd*helpMenu.onItem.accelerator:        ~Shift ~Ctrl<Key>F1
  3899. ! *helpMenu.onItem.accelerator:                <Key>osfHelp
  3900.  
  3901. ! In fact, both F1 and Shift+F1 invoke help on item.
  3902. ! However, if we press F1, we get immediate help, while
  3903. ! Shift+F1 will get `on context' help, where an item must be
  3904. ! selected first.  Since `on context' help is also what we get
  3905. ! when `on item' is selected via the menu, display the `alternate'
  3906. ! accelerator instead.
  3907. Ddd*helpMenu.onItem.acceleratorText:            Shift+F1
  3908. Ddd*helpMenu.onItem.documentationString:    \
  3909. @rm Get help on the current item
  3910.  
  3911. Ddd*helpMenu.onWindow.labelString:        On Window...
  3912. Ddd*helpMenu.onWindow.mnemonic:            W
  3913. Ddd*helpMenu.onWindow.documentationString:    \
  3914. @rm Information about the current window
  3915.  
  3916. ! To make Shift+F1 work even on widgets that have no help callback
  3917. ! installed, we use this accelerator to invoke `on window' help.  `on window'
  3918. ! help will detect that Shift is pressed and call `on context' help instead.
  3919. Ddd*helpMenu.onWindow.accelerator:        Shift ~Ctrl<Key>F1
  3920.  
  3921.  
  3922. Ddd*helpMenu.whatNext.labelString:        What Now?...
  3923. Ddd*helpMenu.whatNext.mnemonic:            N
  3924. Ddd*helpMenu.whatNext.accelerator:        ~Shift Ctrl<Key>F1
  3925. Ddd*helpMenu.whatNext.acceleratorText:        Ctrl+F1
  3926. Ddd*helpMenu.whatNext.documentationString:    \
  3927. @rm Explain the current situation and suggest what to do next
  3928.  
  3929. Ddd*helpMenu.tipOfTheDay.labelString:        Tip of the Day...
  3930. Ddd*helpMenu.tipOfTheDay.mnemonic:        T
  3931. Ddd*helpMenu.tipOfTheDay.documentationString:    \
  3932. @rm Give a useful tip on DDD usage
  3933.  
  3934. Ddd*helpMenu.dddManual.labelString:        DDD Reference...
  3935. Ddd*helpMenu.dddManual.mnemonic:        R
  3936. Ddd*helpMenu.dddManual.documentationString:    \
  3937. @rm The DDD reference manual
  3938.  
  3939. Ddd*helpMenu.news.labelString:            DDD News...
  3940. Ddd*helpMenu.news.mnemonic:            e
  3941. Ddd*helpMenu.news.documentationString:        \
  3942. @rm What's new in this DDD version
  3943.  
  3944. Ddd*helpMenu.gdbManual.labelString:        @GDB@ Reference...
  3945. Ddd*helpMenu.gdbManual.mnemonic:        B
  3946. Ddd*helpMenu.gdbManual.documentationString:    \
  3947. @rm The @GDB@ reference manual
  3948.  
  3949. Ddd*helpMenu.license.labelString:        DDD License...
  3950. Ddd*helpMenu.license.mnemonic:            L
  3951. Ddd*helpMenu.license.documentationString:    \
  3952. @rm Terms and conditions for copying, distributing, and modifying DDD
  3953.  
  3954. Ddd*helpMenu.www.labelString:            DDD WWW Page...
  3955. Ddd*helpMenu.www.mnemonic:            P
  3956. Ddd*helpMenu.www.documentationString:    \
  3957. @rm Invoke a WWW browser with up-to-date DDD information
  3958.  
  3959. Ddd*helpMenu.onVersion.labelString:        About DDD...
  3960. Ddd*helpMenu.onVersion.mnemonic:        A
  3961. Ddd*helpMenu.onVersion.documentationString:    \
  3962. @rm General information about this DDD version
  3963.  
  3964.  
  3965. !-----------------------------------------------------------------------------
  3966. ! Command Tool Layout
  3967. !-----------------------------------------------------------------------------
  3968.  
  3969. ! The number of rows in the command tool.
  3970. Ddd*tool_buttons.fractionBase:            90
  3971.  
  3972. ! The positions are set up according to the following scheme:
  3973. !    0 45 90    Each line has its individual number.
  3974. !  0 +--+--+    `topPosition' refers to the line above the button;
  3975. !    |  |  |    `bottomPosition' is the line below.  Likewise,
  3976. ! 10 +--+--+    `leftPosition' is the line at the left, and
  3977. !    |  |  |    `rightPosition' is the line to the right.  For instance,
  3978. ! 20 +--+--+    the line above the `break' button
  3979. !    |  |  |    is line 1 (topPosition), the line below is line 2
  3980. ! 30 +--+--+    (bottomPosition), the line to the left is line 0
  3981. !    |  |  |    (leftPosition), and the line to the right is line 8
  3982. ! 40 +--+--+    (rightPosition).
  3983. !    |  |  |    
  3984. ! 50 +--+--+    To replace a button by another command, change the
  3985. !    |  |  |    `toolButtons' resource, above, and insert appropriate
  3986. ! 60 +--+--+    resource values for the new button, specifying its
  3987. !    |  |  |    location.
  3988. ! 70 +--+--+    
  3989. !    |  |  |    
  3990. ! 80 +--+--+    
  3991. !    |  |  |    
  3992. ! 90 +--+--+    
  3993.  
  3994. Ddd*tool_buttons.run.topPosition:        0
  3995. Ddd*tool_buttons.run.bottomPosition:        10
  3996. Ddd*tool_buttons.run.leftPosition:        0
  3997. Ddd*tool_buttons.run.rightPosition:        90
  3998.  
  3999. Ddd*tool_buttons.break.topPosition:        10
  4000. Ddd*tool_buttons.break.bottomPosition:        20
  4001. Ddd*tool_buttons.break.leftPosition:        0
  4002. Ddd*tool_buttons.break.rightPosition:        90
  4003.  
  4004. Ddd*tool_buttons.step.topPosition:        20
  4005. Ddd*tool_buttons.step.bottomPosition:        30
  4006. Ddd*tool_buttons.step.leftPosition:        0
  4007. Ddd*tool_buttons.step.rightPosition:        45
  4008.  
  4009. Ddd*tool_buttons.stepi.topPosition:        20
  4010. Ddd*tool_buttons.stepi.bottomPosition:        30
  4011. Ddd*tool_buttons.stepi.leftPosition:        45
  4012. Ddd*tool_buttons.stepi.rightPosition:        90
  4013.  
  4014. Ddd*tool_buttons.next.topPosition:        30
  4015. Ddd*tool_buttons.next.bottomPosition:        40
  4016. Ddd*tool_buttons.next.leftPosition:        0
  4017. Ddd*tool_buttons.next.rightPosition:        45
  4018.  
  4019. Ddd*tool_buttons.nexti.topPosition:        30
  4020. Ddd*tool_buttons.nexti.bottomPosition:        40
  4021. Ddd*tool_buttons.nexti.leftPosition:        45
  4022. Ddd*tool_buttons.nexti.rightPosition:        90
  4023.  
  4024. Ddd*tool_buttons.until.topPosition:        40
  4025. Ddd*tool_buttons.until.bottomPosition:        50
  4026. Ddd*tool_buttons.until.leftPosition:        0
  4027. Ddd*tool_buttons.until.rightPosition:        45
  4028.  
  4029. Ddd*tool_buttons.finish.topPosition:        40
  4030. Ddd*tool_buttons.finish.bottomPosition:        50
  4031. Ddd*tool_buttons.finish.leftPosition:        45
  4032. Ddd*tool_buttons.finish.rightPosition:        90
  4033.  
  4034. Ddd*tool_buttons.cont.topPosition:        50
  4035. Ddd*tool_buttons.cont.bottomPosition:        60
  4036. Ddd*tool_buttons.cont.leftPosition:        0
  4037. Ddd*tool_buttons.cont.rightPosition:        45
  4038.  
  4039. Ddd*tool_buttons.kill.topPosition:        50
  4040. Ddd*tool_buttons.kill.bottomPosition:        60
  4041. Ddd*tool_buttons.kill.leftPosition:        45
  4042. Ddd*tool_buttons.kill.rightPosition:        90
  4043.  
  4044. Ddd*tool_buttons.up.topPosition:        60
  4045. Ddd*tool_buttons.up.bottomPosition:        70
  4046. Ddd*tool_buttons.up.leftPosition:        0
  4047. Ddd*tool_buttons.up.rightPosition:        45
  4048.  
  4049. Ddd*tool_buttons.down.topPosition:        60
  4050. Ddd*tool_buttons.down.bottomPosition:        70
  4051. Ddd*tool_buttons.down.leftPosition:        45
  4052. Ddd*tool_buttons.down.rightPosition:        90
  4053.  
  4054. Ddd*tool_buttons.Back.topPosition:        70
  4055. Ddd*tool_buttons.Back.bottomPosition:        80
  4056. Ddd*tool_buttons.Back.leftPosition:        0
  4057. Ddd*tool_buttons.Back.rightPosition:        45
  4058.  
  4059. Ddd*tool_buttons.Forward.topPosition:        70
  4060. Ddd*tool_buttons.Forward.bottomPosition:    80
  4061. Ddd*tool_buttons.Forward.leftPosition:        45
  4062. Ddd*tool_buttons.Forward.rightPosition:        90
  4063.  
  4064. Ddd*tool_buttons.Edit.topPosition:        80
  4065. Ddd*tool_buttons.Edit.bottomPosition:        90
  4066. Ddd*tool_buttons.Edit.leftPosition:        0
  4067. Ddd*tool_buttons.Edit.rightPosition:        45
  4068.  
  4069. Ddd*tool_buttons.Make.topPosition:        80
  4070. Ddd*tool_buttons.Make.bottomPosition:        90
  4071. Ddd*tool_buttons.Make.leftPosition:        45
  4072. Ddd*tool_buttons.Make.rightPosition:        90
  4073.  
  4074. ! Command tool button placement.  Don't change this.
  4075. Ddd*tool_buttons*topAttachment:            XmATTACH_POSITION
  4076. Ddd*tool_buttons*bottomAttachment:        XmATTACH_POSITION
  4077. Ddd*tool_buttons*leftAttachment:        XmATTACH_POSITION
  4078. Ddd*tool_buttons*rightAttachment:        XmATTACH_POSITION
  4079.  
  4080. ! Some special labels
  4081. Ddd*tool_buttons*Forward.labelString:      Fwd
  4082. Ddd*command_toolbar*Forward.labelString:   Fwd
  4083.  
  4084.  
  4085. ! Make command tool and buttons a little lighter
  4086. Ddd*tool_buttons*shadowThickness:        1
  4087. Ddd*source_buttons*shadowThickness:        1
  4088. Ddd*console_buttons*shadowThickness:        1
  4089. Ddd*data_buttons*shadowThickness:        1
  4090. Ddd*command_toolbar*shadowThickness:        1
  4091.  
  4092.  
  4093. !-----------------------------------------------------------------------------
  4094. ! Preferences
  4095. !-----------------------------------------------------------------------------
  4096.  
  4097. ! Ddd*preferences.okLabelString:         Close
  4098. Ddd*preferences.cancelLabelString:        Reset
  4099. Ddd*preferences_popup.title:            DDD Preferences
  4100.  
  4101. Ddd*preferences*buttons.orientation:         XmHORIZONTAL
  4102. Ddd*preferences*buttons.borderWidth:          0
  4103. Ddd*preferences*buttons.marginWidth:          0
  4104. Ddd*preferences*buttons.marginHeight:        0
  4105. Ddd*preferences*buttons.entryAlignment:        XmALIGNMENT_CENTER
  4106. Ddd*preferences*buttons*indicatorOn:        off
  4107. Ddd*preferences*buttons*shadowThickness:    2
  4108. Ddd*preferences*buttons*alignment:        XmALIGNMENT_CENTER
  4109. Ddd*preferences*panel*XmRowColumn.marginHeight: 0
  4110.  
  4111. Ddd*preferences*buttons*general.labelString:    \ \ \ General\ \ \ 
  4112. Ddd*preferences*buttons*source.labelString:    Source
  4113. Ddd*preferences*buttons*data.labelString:    Data
  4114. Ddd*preferences*buttons*startup.labelString:    Startup
  4115. Ddd*preferences*buttons*fonts.labelString:    Fonts
  4116. Ddd*preferences*buttons*helpers.labelString:    Helpers
  4117.  
  4118. Ddd*preferences*general*helpString:    \
  4119. @rm These are the @sl General Preferences@rm .\n\
  4120. \n\
  4121. @tt \267 @rm When you move the mouse pointer over a button, DDD can give a hint \
  4122. on its usage.\n\
  4123.     @tt -@rm  Select @bf as popup tips@rm  if you want the hint to be shown \
  4124. in a popup window.\n\
  4125.     @tt -@rm  Select @bf in the status line@rm  if you want the hint to be shown \
  4126. in the status line.\n\
  4127.     You can also select both options, or none at all.\n\
  4128. @tt \267 @rm When you move the mouse pointer over a variable in the source window,\n\
  4129.     DDD can automatically display the variable value.\n\
  4130.     @tt -@rm  Select @bf as popup tips@rm  if you want the value to be shown \
  4131. in a popup window.\n\
  4132.     @tt -@rm  Select @bf in the status line@rm  if you want it to be shown \
  4133. in the status line.\n\
  4134.     You can also select both options, or none at all.\n\
  4135. @tt \267 @rm In DDD, the @key Tab@rm  key can complete its arguments.\n\
  4136.     @tt -@rm  Set @bf in all windows@rm  if you want completion in all DDD \
  4137. windows.\n\
  4138.     @tt -@rm  Set @bf in console only@rm  if you need the @key Tab@rm  key to move \
  4139. the focus.\n\
  4140. @tt \267 @rm If @bf Iconify all windows at once@rm  is set, all DDD windows are \
  4141. iconified as a group.\n\
  4142.     Otherwise, windows are iconified separately.\n\
  4143. @tt \267 @rm If @bf Uniconify when ready@rm  is set, the DDD windows are \
  4144. automatically uniconified\n\
  4145.     when DDD becomes ready (e.g. after reaching a breakpoint).\n\
  4146.     Otherwise, DDD windows remain iconified.\n\
  4147. @tt \267 @rm If @bf Suppress X warnings@rm  is set, X warnings are silently ignored.\n\
  4148. @tt \267 @rm If @bf Continue automatically...@rm  is set, DDD will continue execution\n\
  4149.     of programs that were interrupted while grabbing the mouse pointer.\n\
  4150. \n\
  4151. Use the buttons above to view and change other preferences.\n\
  4152. Click on @bf Reset@rm  to restore the saved preferences.
  4153.  
  4154.  
  4155. Ddd*preferences*buttonHints.labelString:     \
  4156. Automatic Display of Button Hints
  4157. Ddd*preferences*valueHints.labelString:     \
  4158. Automatic Display of Variable Values
  4159.  
  4160. Ddd*preferences*tips.labelString: as Popup Tips
  4161. Ddd*preferences*docs.labelString: in the Status Line
  4162.  
  4163. Ddd*preferences*tabCompletion.labelString: \
  4164. Tab key Completes
  4165. Ddd*preferences*inAllWindows.labelString: in All Windows
  4166. Ddd*preferences*inConsole.labelString:    in Console Only
  4167.  
  4168. Ddd*preferences*groupIconify.labelString:     \
  4169. Iconify all Windows at Once
  4170. Ddd*preferences*uniconifyWhenReady.labelString:     \
  4171. Uniconify When Ready
  4172. Ddd*preferences*suppressWarnings.labelString:     \
  4173. Suppress X Warnings
  4174. Ddd*preferences*checkGrabs.labelString:     \
  4175. Continue Automatically when Mouse Pointer is Frozen
  4176.  
  4177.  
  4178. Ddd*preferences*source*helpString:    \
  4179. @rm These are the @sl Source Preferences@rm .\n\
  4180. \n\
  4181. @tt \267 @rm DDD can show the current position and breakpoints\n\
  4182.     @tt -@rm  @bf as glyphs@rm , using small images in the text,\n\
  4183.     @tt -@rm  @bf as text characters@rm , using ordinary text characters.\n\
  4184. @tt \267 @rm The @bf Tool Buttons@rm  can be placed\n\
  4185.     @tt -@rm  in the @bf Command Tool@rm  which can be moved around DDD, or\n\
  4186.     @tt -@rm  in the @bf Source Window@rm , as line of buttons.\n\
  4187. @tt \267 @rm Using DBX, DDD can refer to program sources\n\
  4188.     @tt -@rm  by @bf full path name@rm , or\n\
  4189.     @tt -@rm  by @bf base name only@rm , as required by some DBX variants.\n\
  4190. @tt \267 @rm If @bf Find words only@rm  is set, only complete words are found.\n\
  4191.     Otherwise, DDD finds arbitrary occurrences.\n\
  4192. @tt \267 @rm If @bf Find case sensitive@rm  is set, search is case-sensitive.\n\
  4193.     Otherwise, DDD finds occurrences regardless of case.\n\
  4194. @tt \267 @rm If @bf Cache source files@rm  is set, source texts are cached in memory.\n\
  4195.     Otherwise, sources are read from disk upon each source change.\n\
  4196. @tt \267 @rm If @bf Cache machine code@rm  is set, disassembled code is cached \
  4197. in memory.\n\
  4198.     Otherwise, code is re-disassembled upon each function change.\n\
  4199. @tt \267 @rm In @bf Tab Width@rm , you can set the spacing of tab stops.\n\
  4200.     Setting the tab width to 8 sets a tab stop every 8 characters.\n\
  4201. @tt \267 @rm In @bf Indentation@rm , you can indent the source and machine code,\n\
  4202.     giving additional room for the breakpoint area.\n\
  4203.     Setting the source indentation to 8 or more also enables line numbers.\n\
  4204. \n\
  4205. Use the buttons above to view and change other preferences.\n\
  4206. Click on @bf Reset@rm  to restore the saved preferences.
  4207.  
  4208. Ddd*preferences*showExecPos.labelString:    Show Position and Breakpoints
  4209. Ddd*preferences*asGlyphs.labelString:        as Glyphs
  4210. Ddd*preferences*asText.labelString:        as Text Characters
  4211.  
  4212. Ddd*preferences*toolButtons.labelString:    Tool buttons location
  4213. Ddd*toolButtonsMenu*commandTool.labelString:    \
  4214. Command Tool
  4215. Ddd*toolButtonsMenu*sourceWindow.labelString:   \
  4216. Source Window\ \ \ \ \ 
  4217.  
  4218. Ddd*preferences*referSources.labelString:    Refer to Program Sources
  4219. Ddd*preferences*byPath.labelString:        by Full Path Name
  4220. Ddd*preferences*byBase.labelString:        by Base Name Only
  4221.  
  4222. Ddd*preferences*cache.labelString:            Cache
  4223. Ddd*preferences*cacheSource.labelString:    Source Files
  4224. Ddd*preferences*cacheCode.labelString:        Machine Code
  4225.  
  4226. Ddd*preferences*find.labelString:            Find
  4227. Ddd*preferences*wordsOnly.labelString:        \
  4228. Words Only\ 
  4229. Ddd*preferences*caseSensitive.labelString:    \
  4230. Case Sensitive
  4231.  
  4232. Ddd*preferences*tabWidth.orientation:        XmHORIZONTAL
  4233. Ddd*preferences*tabWidth.minimum:        1
  4234. Ddd*preferences*tabWidth.maximum:        32
  4235. Ddd*preferences*tabWidth.showValue:        on
  4236. Ddd*preferences*tabWidth.titleString:        \
  4237. Tab Width\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 
  4238.  
  4239. Ddd*preferences*sourceIndent.orientation:    XmHORIZONTAL
  4240. Ddd*preferences*sourceIndent.minimum:        0
  4241. Ddd*preferences*sourceIndent.maximum:        16
  4242. Ddd*preferences*sourceIndent.showValue:        on
  4243. Ddd*preferences*sourceIndent.titleString:    \
  4244. Source Indentation\ \ \ \ \ \ \ \ \ \ \ 
  4245.  
  4246. Ddd*preferences*codeIndent.orientation:        XmHORIZONTAL
  4247. Ddd*preferences*codeIndent.minimum:        0
  4248. Ddd*preferences*codeIndent.maximum:        16
  4249. Ddd*preferences*codeIndent.showValue:        on
  4250. Ddd*preferences*codeIndent.titleString:        \
  4251. Machine Code Indentation
  4252.  
  4253.  
  4254. Ddd*preferences*data*helpString:    \
  4255. @rm These are the @sl Data Preferences@rm .\n\
  4256. \n\
  4257. @tt \267 @rm If @bf Detect aliases@rm  is set, DDD detects displays with the same\n\
  4258.     physical address and suppresses all aliases except the one that was\n\
  4259.     least recently changed.  Useful for examining shared data structures.\n\
  4260. @tt \267 @rm If @bf Display two-dimensional arrays as tables@rm  is set, the elements\n\
  4261.     of two-dimensional arrays are aligned in a table.\n\
  4262.     Otherwise, two-dimensional arrays are displayed as nested linear arrays.\n\
  4263. @tt \267 @rm If @bf Auto-align displays@rm  is set,\n\
  4264.     each display is aligned on the nearest grid point.\n\
  4265. @tt \267 @rm @bf Compact layout@rm  enables a compact layout,\n\
  4266.     suitable for homogeneous structures only.\n\
  4267. @tt \267 @rm @bf Automatic layout@rm  makes DDD layout the graph after each change.\n\
  4268. @tt \267 @rm In @bf Grid size@rm , you can change the spacing of grid points.\n\
  4269.     A spacing of 0 disables the grid.\n\
  4270. \n\
  4271. Use the buttons above to view and change other preferences.\n\
  4272. Click on @bf Reset@rm  to restore the saved preferences.
  4273.  
  4274. Ddd*preferences*detectAliases.labelString:    \
  4275. Detect Aliases (shared data structures)
  4276. Ddd*preferences*align2dArrays.labelString:    \
  4277. Display Two-Dimensional Arrays as Tables
  4278. Ddd*preferences*showHints.labelString:            \
  4279. Show Edge Hints
  4280. Ddd*preferences*snapToGrid.labelString:            \
  4281. Auto-Align Displays on Nearest Grid Point
  4282. Ddd*preferences*compactLayout.labelString:      \
  4283. Use Compact Layout (Homogeneous Structures Only)
  4284. Ddd*preferences*autoLayout.labelString:            \
  4285. Re-Layout Graph Automatically After Each Change
  4286.  
  4287. Ddd*preferences*gridSize.orientation:        XmHORIZONTAL
  4288. Ddd*preferences*gridSize.minimum:        0
  4289. Ddd*preferences*gridSize.maximum:        64
  4290. Ddd*preferences*gridSize.showValue:        on
  4291. Ddd*preferences*gridSize.titleString:        Grid size
  4292.  
  4293. Ddd*preferences*startup*helpString:   \
  4294. @rm These are the @sl Startup Preferences@rm , effective only after a restart.\n\
  4295. \n\
  4296. @tt \267 @rm @bf Window Layout@rm  sets the window layout.\n\
  4297.     @tt -@rm  @bf Stacked Windows@rm  means to use one top-level window\n\
  4298.         where source, data, and the @GDB@ console are stacked.\n\
  4299.     @tt -@rm  @bf Separate Windows@rm  means to use a separate top-level window\n\
  4300.         for each of source, data, and the @GDB@ console.\n\
  4301. @tt \267 @rm The @bf Toolbar@rm  can appear as\n\
  4302.     @tt -@rm  @bf Images@rm , showing a small symbol for each action, and/or\n\
  4303.     @tt -@rm  @bf Captions@rm , showing the action name below the image.\n\
  4304.     @tt -@rm  @bf Flat@rm , enabling the button border only when entered.\n\
  4305.     @tt -@rm  @bf Color@rm , enabling colored images.\n\
  4306.     If neither @bf Images@rm  nor @bf Captions@rm  is set, \
  4307. buttons have ordinary labels.\n\
  4308. @tt \267 @rm @bf Keyboard Focus@rm  sets the keyboard focus policy.\n\
  4309.     @tt -@rm  @bf Click to Type@rm  means that you must click on a window\n\
  4310.         to direct the keyboard focus to it.\n\
  4311.     @tt -@rm  @bf Point to Type@rm  means that pointing to the window suffices.\n\
  4312. @tt \267 @rm @bf Data Scrolling@rm  sets the data window scrolling mode.\n\
  4313.     @tt -@rm  @bf Panner@rm  means to use a two-dimensional scrollbar\n\
  4314.         (not available in all DDD configurations).\n\
  4315.     @tt -@rm  @bf Scrollbars@rm  means to use two scrollbars.\n\
  4316. @tt \267 @rm @bf Debugger Type@rm  sets the type of the inferior debugger.\n\
  4317. @tt \267 @rm @bf Show Splash Screen@rm  sets whether DDD shows its splash screen.\n\
  4318. @tt \267 @rm @bf Show Tip of the Day@rm  sets whether DDD shows its tip of the day.\n\
  4319. \n\
  4320. Use the buttons above to view and change other preferences.\n\
  4321. Click on @bf Reset@rm  to restore the saved preferences.
  4322.  
  4323. Ddd*preferences*startup*adjustMargin:        off
  4324.  
  4325. Ddd*preferences*windows.labelString:        Window Layout
  4326. Ddd*windowsMenu*attached.labelString:        Stacked Windows
  4327. Ddd*windowsMenu*separate.labelString:        Separate Windows
  4328.  
  4329. Ddd*preferences*bindings.labelString:        Cut/Copy/Paste Bindings
  4330. Ddd*bindingsMenu*kde.labelString:        KDE Style
  4331. Ddd*bindingsMenu*motif.labelString:        Motif Style
  4332.  
  4333. Ddd*preferences*buttons.labelString:        Toolbar Appearance
  4334. Ddd*buttonsMenu*images.labelString:        Images
  4335. Ddd*buttonsMenu*captions.labelString:        Captions
  4336. Ddd*buttonsMenu*flat.labelString:        Flat
  4337. Ddd*buttonsMenu*color.labelString:        Color
  4338.  
  4339. Ddd*preferences*keyboardFocus.labelString:    Keyboard Focus
  4340. Ddd*keyboardFocusMenu*explicit.labelString:    Click to Type
  4341. Ddd*keyboardFocusMenu*pointer.labelString:    Point to Type
  4342.  
  4343. Ddd*preferences*dataScrolling.labelString:    Data Scrolling
  4344. Ddd*dataScrollingMenu*panner.labelString:    Panner
  4345. Ddd*dataScrollingMenu*scrollbars.labelString:    Scrollbars
  4346.  
  4347. Ddd*preferences*debugger.labelString:        Debugger Type
  4348. Ddd*debuggerMenu*gdb.labelString:        GDB
  4349. Ddd*debuggerMenu*dbx.labelString:        DBX
  4350. Ddd*debuggerMenu*xdb.labelString:        XDB
  4351. Ddd*debuggerMenu*jdb.labelString:        JDB
  4352. Ddd*debuggerMenu*pydb.labelString:        PYDB
  4353.  
  4354. Ddd*preferences*show.labelString:            Startup Windows
  4355. Ddd*preferences*splashScreen.labelString:    DDD Splash Screen
  4356. Ddd*preferences*startupTips.labelString:    Tip of the Day
  4357.  
  4358.  
  4359. Ddd*preferences*fonts*helpString: \
  4360. @rm These are the @sl DDD fonts@rm .\n\
  4361. \n\
  4362. @tt \267 @rm @bf Default Font@rm  is the font used for DDD labels and buttons.\n\
  4363. @tt \267 @rm @bf Variable Width@rm  is the font used for messages (such as this one).\n\
  4364. @tt \267 @rm @bf Fixed Width@rm  is the font used for program code and text fields.\n\
  4365. \n\
  4366. To change a font, enter its name and size (in 1/10 points).\n\
  4367. A pair @sl family@rm -@sl weight@rm  as font name is sufficient.\n\
  4368. \n\
  4369. Using @bf Browse@rm , you can select fonts using the @tt xfontsel@rm \n\
  4370. font selection program.\n\
  4371. Click on @bf select@rm  to select the chosen font.\n\
  4372. Wildcard entries (`@tt *@rm') will be ignored.\n\
  4373. \n\
  4374. Use the buttons above to view and change other preferences.\n\
  4375. Click on @bf Reset@rm  to restore the saved preferences.
  4376.  
  4377.  
  4378. Ddd*preferences*fonts*default.labelString:     Default Font
  4379. Ddd*preferences*fonts*variableWidth.labelString: Variable Width
  4380. Ddd*preferences*fonts*fixedWidth.labelString:     Fixed Width
  4381.  
  4382. Ddd*preferences*fonts*name.text.columns:     32
  4383. Ddd*preferences*fonts*size.label.labelString:     Size
  4384. Ddd*preferences*fonts*size.text.columns:     3
  4385. Ddd*preferences*fonts*browse.labelString:     Browse...
  4386.  
  4387.  
  4388. Ddd*preferences*helpers*helpString: \
  4389. @rm These are the @sl DDD Helpers@rm , external applications used by DDD.\n\
  4390. \n\
  4391. @tt \267 @rm @bf Edit Sources@rm  invokes an X editor for the current source file.\n\
  4392.     `@tt @ FILE@ @rm' is replaced by the current file name.\n\
  4393.     `@tt @ LINE@ @rm' is replaced by the current line.\n\
  4394.     Example: `@tt nedit @ FILE@ @rm'\n\
  4395. @tt \267 @rm @bf Get Core File@rm  is a command to get a core file \
  4396. from a running process.\n\
  4397.     `@tt @ FILE@ @rm' is replaced by the base name of the target core file.\n\
  4398.     `@tt @ PID@ @rm' is replaced by the process ID.\n\
  4399.     The output must be written to `@tt @ FILE@ .@ PID@ @rm'.\n\
  4400.     Example: `@tt gcore -o @ FILE@  @ PID@ @rm'\n\
  4401.     Leave this empty if you have no `@tt gcore@rm' or similar command.\n\
  4402. @tt \267 @rm @bf List Processes@rm  is a command to get a list of processes.\n\
  4403.     Example: `@tt ps@rm'\n\
  4404. @tt \267 @rm @bf Execution Window@rm  is a command to start a terminal emulator.\n\
  4405.     To this command, DDD appends bourne shell commands to be executed\n\
  4406.     within the execution window.\n\
  4407.     Example: `@tt xterm -e /bin/sh -c@rm'\n\
  4408. @tt \267 @rm @bf Uncompress@rm  is an uncompression command.\n\
  4409.     The command reads from standard input and writes to \
  4410. standard output.\n\
  4411.     Example: `@tt gunzip -c@rm'\n\
  4412. @tt \267 @rm @bf Web Browser@rm  invokes a WWW browser.\n\
  4413.     `@tt @ URL@ @rm' is replaced by the URL to be shown.\n\
  4414.     Example: `@tt netscape @ URL@ @rm'\n\
  4415. \n\
  4416. Use the buttons above to view and change other preferences.\n\
  4417. Click on @bf Reset@rm  to restore the saved preferences.
  4418.  
  4419. Ddd*preferences*edit*labelString:        Edit Sources
  4420. Ddd*preferences*get_core*labelString:        Get Core File
  4421. Ddd*preferences*ps*labelString:            List Processes
  4422. Ddd*preferences*term*labelString:        Execution Window
  4423. Ddd*preferences*uncompress*labelString:        Uncompress
  4424. Ddd*preferences*www*labelString:        Web Browser
  4425. Ddd*preferences*text.columns:            50
  4426.  
  4427.  
  4428.  
  4429. !-----------------------------------------------------------------------------
  4430. ! Settings
  4431. !-----------------------------------------------------------------------------
  4432.  
  4433. Ddd*settings_popup.title: DDD: Debugger Settings
  4434. ! Ddd*settings.okLabelString: Close
  4435. Ddd*settings.cancelLabelString: Reset
  4436.  
  4437. Ddd*settings*help.labelString:        ?
  4438. Ddd*settings*XmTextField.columns:    10
  4439. Ddd*settings*XmTextField.marginHeight:    3
  4440.  
  4441. ! Settings for special fields
  4442. Ddd*settings*dir.columns:        36
  4443. Ddd*settings*path.columns:       36
  4444. Ddd*settings*use.columns:        50
  4445. Ddd*settings*v8.labelString:     SPARC V8
  4446. Ddd*settings*v9.labelString:     SPARC V9
  4447. Ddd*settings*v9sgi.labelString:  SPARC V9 with Special Graphics Instructions
  4448. Ddd*settings*parent.labelString: stay with parent
  4449. Ddd*settings*child.labelString:  follow child
  4450. Ddd*settings*both.labelString:   follow both
  4451. Ddd*settings*ask.labelString:    ask for an option
  4452. Ddd*settings*stdio.labelString:  Standard I/O
  4453. Ddd*settings*pty.labelString:    PTY
  4454.  
  4455. Ddd*settings*help.tipString:\
  4456. @rm Get help on this setting
  4457.  
  4458. ! An empty help string means that the help text for this command
  4459. ! is to be requested from GDB (via the GDB `help' command).
  4460. Ddd*settings*scroll*helpString:
  4461.  
  4462. ! The panel itself has a help button, too.
  4463. Ddd*settings*helpString: \
  4464. @rm These are the @sl @GDB@ Settings@rm .\n\
  4465. \n\
  4466. All settings (except source and object paths) can be saved\n\
  4467. using @bf Edit@symbol \256@bf Save Options@rm .\n\
  4468. \n\
  4469. Click on @bf ?@rm  near an item to get further information.\n\
  4470. In a text field, press the @key RETURN @symbol \277@rm  key to commit the changes.\n\
  4471. \n\
  4472. Click on @bf Reset@rm  to restore the saved settings.\n\
  4473. Click on @bf OK@rm  to close this window.
  4474.  
  4475.  
  4476. !-----------------------------------------------------------------------------
  4477. ! Status displays
  4478. !-----------------------------------------------------------------------------
  4479.  
  4480. ! Ddd*infos.okLabelString: Close
  4481. Ddd*infos.cancelLabelString: Reset
  4482. Ddd*infos_popup.title: DDD: Status Displays
  4483.  
  4484. Ddd*infos*help.labelString:            ?
  4485. Ddd*infos*help.tipString:\
  4486. @rm Get help on this status display
  4487.  
  4488. ! An empty help string means that the help text for this command
  4489. ! is to be requested from GDB (via the GDB `help' command).
  4490. Ddd*infos*scroll*helpString:
  4491.  
  4492. ! The panel itself has a help button, too.
  4493. Ddd*infos*helpString: \
  4494. @bs Status Displays@rm \n\
  4495. \n\
  4496. A @sl status display@rm  shows things about the program being debugged\n\
  4497. in the data window.  Please pick your choice from the list.\n\
  4498. \n\
  4499. Click on @bf ?@rm  near an item to get further information.\n\
  4500. \n\
  4501. Click on @bf Reset@rm  to delete all status displays.\n\
  4502. Click on @bf OK@rm  to close this window.
  4503.  
  4504.  
  4505.  
  4506. !-----------------------------------------------------------------------------
  4507. ! Signals
  4508. !-----------------------------------------------------------------------------
  4509.  
  4510. ! Ddd*signals.okLabelString: Close
  4511. Ddd*signals.cancelLabelString: Reset
  4512. Ddd*signals_popup.title: DDD: Signal Handling
  4513.  
  4514. Ddd*signals*send.labelString:       Send
  4515. Ddd*signals*send.rightOffset:       5
  4516. Ddd*signals*send.tipString: \
  4517. @rm Continue execution with this signal
  4518.  
  4519. Ddd*signals*help.labelString:       ?
  4520. Ddd*signals*help.tipString: \
  4521. @rm Get help on this signal
  4522.  
  4523. ! The panel itself has a help button, too.
  4524. Ddd*signals*helpString: \
  4525. @bs Signal Handling@rm \n\
  4526. \n\
  4527. This panel controls how signals are handled by @GDB@.\n\
  4528. \n\
  4529. @tt \267 @bf Stop@rm  @tt -@rm  interrupt program if this signal happens (implies @bf Print@rm ).\n\
  4530. @tt \267 @bf Print@rm  @tt -@rm  print a message in the @GDB@ console if this signal happens.\n\
  4531. @tt \267 @bf Pass@rm  @tt -@rm  let program see this signal; otherwise program doesn't know.\n\
  4532. @tt \267 @bf Send@rm  @tt -@rm  continue program execution with this signal.\n\
  4533. \n\
  4534. Click on @bf ?@rm  to get further information on the specific signal.\n\
  4535. \n\
  4536. Click on @bf Reset@rm  to restore the original settings.\n\
  4537. Click on @bf OK@rm  to close this window.
  4538.  
  4539.  
  4540. !-----------------------------------------------------------------------------
  4541. ! Button Editor and Shortcut Editor
  4542. !-----------------------------------------------------------------------------
  4543.  
  4544. Ddd*edit_buttons_popup.title: DDD: Button Editor
  4545. ! Ddd*edit_buttons.okLabelString: Close
  4546. Ddd*edit_buttons.cancelLabelString: Reset
  4547.  
  4548. Ddd*edit_buttons*buttons.entryAlignment:    XmALIGNMENT_CENTER
  4549. Ddd*edit_buttons*buttons*indicatorOn:        off
  4550. Ddd*edit_buttons*buttons*shadowThickness:    2
  4551. Ddd*edit_buttons*buttons*alignment:        XmALIGNMENT_CENTER
  4552.  
  4553. Ddd*edit_buttons*console.labelString:        Console Buttons
  4554. Ddd*edit_buttons*source.labelString:        Source Buttons
  4555. Ddd*edit_buttons*data.labelString:        Data Buttons
  4556. Ddd*edit_buttons*shortcuts.labelString:        Shortcuts
  4557.  
  4558. Ddd*edit_buttons*text.rows:             12
  4559. Ddd*edit_buttons*text.wordWrap:                on
  4560. Ddd*edit_buttons*text.scrollHorizontal:        off
  4561.  
  4562. Ddd*edit_buttons*verify.labelString:         Enable supported buttons only
  4563.  
  4564. Ddd*edit_buttons*helpString: \
  4565. @bs Button Editor@rm \n\
  4566. \n\
  4567. Each line specifies a user-defined button, in the format\n\
  4568. \n\
  4569.     @sl command@rm \ \ \ \ @tt //@rm  @sl label@rm \n\
  4570. \n\
  4571. If `@tt // @sl label@rm @rm' is omitted, @sl command@rm  is used as label.\n\
  4572. \n\
  4573. The following strings have a special meaning in @sl command@rm :\n\
  4574. \n\
  4575. @tt \267 @rm `@tt ()@rm' is replaced by the current argument field.\n\
  4576.     Example: `@tt print *(()) // Print *()@rm'\n\
  4577. @tt \267 @rm `@tt ^@sl character@rm @rm' causes @sl command@rm  to issue \
  4578. @key Ctrl+@sl character@rm @rm .\n\
  4579.     Example: `@tt Interrupt^C@rm'\n\
  4580. @tt \267 @rm `@tt ...@rm' at the end keeps @sl command@rm  from issuing a newline.\n\
  4581.     Example: `@tt help ...@rm'\n\
  4582. \n\
  4583. If @bf Enable supported buttons only@rm  is set, DDD enables a button\n\
  4584. if and only if its command is supported by the inferior debugger.\n\
  4585. \n\
  4586. Click on @bf OK@rm  to apply the changes and close this window.\n\
  4587. Use @bf Edit@symbol \256@bf Save Options@rm  to save all button specifications.
  4588.  
  4589. Ddd*edit_buttons*shortcuts*helpString: \
  4590. @bs Shortcut Editor@rm \n\
  4591. \n\
  4592. Each line specifies a display shortcut, in the format\n\
  4593. \n\
  4594.     @sl expression@rm \ \ \ \ @tt //@rm  @sl label@rm \n\
  4595. \n\
  4596. If `@tt // @sl label@rm @rm' is omitted, @bf Display @sl expression@rm @rm  \
  4597. is used as label.\n\
  4598. In @sl expression@rm , `@tt ()@rm' is replaced by the current argument field.\n\
  4599. \n\
  4600. Useful shortcuts include:\n\
  4601. \n\
  4602. @tt \267 @rm Data conversions.  `@tt /x ()@rm' converts to hex.\n\
  4603. @tt \267 @rm Type casts.  `@tt (char *)()@rm' casts to a string.\n\
  4604. @tt \267 @rm Member access.  `@tt ().str( )@rm' invokes the @tt str()@rm  method.\n\
  4605.     (We use `@tt ( )@rm' instead of `@tt ()@rm' to prevent argument substitution.)\n\
  4606. @tt \267 @rm Pointer chains.  `@tt *(().next)@rm' shows what the @tt next@rm  \
  4607. member points at.\n\
  4608. \n\
  4609. Click on @bf OK@rm  to apply the changes and close this window.\n\
  4610. Use @bf Edit@symbol \256@bf Save Options@rm  to save all shortcuts.
  4611.  
  4612.  
  4613.  
  4614.  
  4615. !-----------------------------------------------------------------------------
  4616. ! Splash screen
  4617. !-----------------------------------------------------------------------------
  4618.  
  4619. Ddd*splash_shell.splash.background:            white
  4620. Ddd*splash_shell.splash.foreground:            black
  4621.  
  4622.  
  4623.  
  4624. !-----------------------------------------------------------------------------
  4625. ! Scrolled and paned windows
  4626. !-----------------------------------------------------------------------------
  4627.  
  4628. Ddd*XmPanedWindow.marginWidth:        2
  4629. Ddd*XmPanedWindow.marginHeight:        2
  4630. Ddd*XmPanedWindow.shadowThickness:    0
  4631. Ddd*XmPanedWindow.spacing:        4
  4632. ! Ddd*XmText.marginWidth:        0
  4633. ! Ddd*XmText.marginHeight:        0
  4634. ! Ddd*XmText.shadowThickness:        1
  4635.  
  4636.  
  4637.  
  4638. !-----------------------------------------------------------------------------
  4639. ! Graph Editor
  4640. !-----------------------------------------------------------------------------
  4641.  
  4642. Ddd*graph_edit_panner.backgroundPixmap:    25_foreground
  4643. Ddd*graph_edit_panner.defaultScale:    10
  4644. Ddd*graph_edit_panner.baseTranslations: \
  4645. #override\n\
  4646. <Btn1Down>:       ddd-get-focus() start()\n\
  4647. <Btn2Down>:       ddd-get-focus() abort()\n\
  4648. <Key>osfLeft:       page(-.5p, +0)\n\
  4649. <Key>osfRight:       page(+.5p, +0)\n\
  4650. <Key>osfUp:       page(+0, -.5p)\n\
  4651. <Key>osfDown:       page(+0, +.5p)\n\
  4652. <Key>osfBeginLine: page(0,0)\n\
  4653. <Key>osfBackSpace: page(-1p, -1p)\n\
  4654. <Key>osfDelete:       page(-1p, -1p)\n\
  4655. Shift<Key>Tab:       ddd-prev-tab-group()\n\
  4656. <Key>Tab:       ddd-next-tab-group()\n
  4657.  
  4658. Ddd*graph_edit.highlightOnEnter:    On
  4659. Ddd*graph_edit.navigationType:        TAB_GROUP
  4660.  
  4661. ! Set this to have a crosshair cursor
  4662. ! Ddd*graph_edit.defaultCursor:        crosshair
  4663.  
  4664.  
  4665. Ddd*graph_edit.helpString:    \
  4666. @bs Data Window@rm \n\
  4667. \n\
  4668. The data window shows the data displays of the debugged program.\n\
  4669. \n\
  4670. @bf Selecting displays@rm \n\
  4671. @tt \267 @rm Using @bs mouse button 1@rm , click on a display \
  4672. to select it.\n\
  4673. @tt \267 @rm Double-click on a display title to select all connected displays.\n\
  4674. @tt \267 @rm Double-click on the background to select all displays.\n\
  4675. @tt \267 @rm Drag on the background to select several displays.\n\
  4676. \n\
  4677. Using @bs mouse button 2@rm  (or @key Shift@rm  + @bs mouse button 1@rm ) instead\n\
  4678. @sl toggles@rm  the selection rather than setting it.\n\
  4679. \n\
  4680. @bf Moving displays@rm \n\
  4681. @tt \267 @rm Using @bs mouse button 1@rm , drag on a display to move\n\
  4682.     all selected displays.\n\
  4683. \n\
  4684. @bf Modifying displays@rm \n\
  4685. @tt \267 @rm Using @bs mouse button 1@rm , double-click on a value for details.\n\
  4686. @tt \267 @rm Using @bs mouse button 3@rm , click on some display to modify it.\n\
  4687. @tt \267 @rm Using @key Shift@rm  + @bs mouse button 3@rm , select modifications from\n\
  4688.     a shortcut menu.\n\
  4689. \n\
  4690. @bf Creating displays@rm \n\
  4691. @tt \267 @rm Using @bs mouse button 1@rm , double-click on a pointer to dereference it.\n\
  4692. @tt \267 @rm Using @bs mouse button 3@rm , click on the background\n\
  4693.     to create new displays via a popup menu.
  4694.  
  4695. Ddd*data_disp_shell.helpString:    \
  4696. @bs Data Window@rm \n\
  4697. \n\
  4698. The data window shows the data displays of the debugged program.\n\
  4699. \n\
  4700. @bf Selecting displays@rm \n\
  4701. @tt \267 @rm Using @bs mouse button 1@rm , click on a display \
  4702. to select it.\n\
  4703. @tt \267 @rm Double-click on a display title to select all connected displays.\n\
  4704. @tt \267 @rm Double-click on the background to select all displays.\n\
  4705. @tt \267 @rm Drag on the background to select several displays.\n\
  4706. \n\
  4707. Using @bs mouse button 2@rm  (or @key Shift@rm  + @bs mouse button 1@rm ) instead\n\
  4708. @sl toggles@rm  the selection rather than setting it.\n\
  4709. \n\
  4710. @bf Moving displays@rm \n\
  4711. @tt \267 @rm Using @bs mouse button 1@rm , drag on a display to move\n\
  4712.     all selected displays.\n\
  4713. \n\
  4714. @bf Modifying displays@rm \n\
  4715. @tt \267 @rm Using @bs mouse button 1@rm , double-click on a value for details.\n\
  4716. @tt \267 @rm Using @bs mouse button 3@rm , click on some display to modify it.\n\
  4717. @tt \267 @rm Using @key Shift@rm  + @bs mouse button 3@rm , select modifications from\n\
  4718.     a shortcut menu.\n\
  4719. \n\
  4720. @bf Creating displays@rm \n\
  4721. @tt \267 @rm Using @bs mouse button 1@rm , double-click on a pointer to dereference it.\n\
  4722. @tt \267 @rm Using @bs mouse button 3@rm , click on the background\n\
  4723.     to create new displays via a popup menu.
  4724.  
  4725.  
  4726. Ddd*graph_edit_panner.helpString:    \
  4727. @bs Panner@rm \n\
  4728. \n\
  4729. Drag the slider with @bs mouse button 1@rm  to scroll the data window.
  4730. Ddd*graph_edit_panner.tipString:    \
  4731. @rm Scroll data window
  4732.  
  4733.  
  4734. !-----------------------------------------------------------------------------
  4735. ! Graph Popup Menus
  4736. !-----------------------------------------------------------------------------
  4737.  
  4738. Ddd*graph_popup.selectAll.labelString:    Select All
  4739. Ddd*graph_popup.selectAll.documentationString: \
  4740. @rm Select all displays
  4741.  
  4742. Ddd*graph_popup.refresh.labelString:    Refresh
  4743. Ddd*graph_popup.refresh.documentationString: \
  4744. @rm Redraw all displays
  4745.  
  4746. Ddd*graph_popup.new.labelString:    New Display...
  4747. Ddd*graph_popup.new.documentationString: \
  4748. @rm Create a new display at the selected position
  4749.  
  4750. Ddd*node_popup.dereference.labelString:    Display *
  4751. Ddd*node_popup.dereference.documentationString: \
  4752. @rm Dereference the selected display
  4753.  
  4754. Ddd*node_popup.new.labelString:        New Display
  4755. Ddd*node_popup.new.documentationString: \
  4756. @rm Create a new display dependent on the selected display
  4757.  
  4758. Ddd*node_popup.detail.labelString:    Show Detail
  4759. Ddd*node_popup.detail.documentationString: \
  4760. @rm Show/Hide details of the selected display
  4761.  
  4762. Ddd*node_popup.rotate.labelString:    Rotate
  4763. Ddd*node_popup.rotate.documentationString: \
  4764. @rm Rotate the selected display
  4765.  
  4766. Ddd*node_popup.set.labelString:        Set Value...
  4767. Ddd*node_popup.set.documentationString: \
  4768. @rm Change the selected display value
  4769.  
  4770. Ddd*node_popup.delete.labelString:    Undisplay
  4771. Ddd*node_popup.delete.documentationString: \
  4772. @rm Delete the selected display
  4773.  
  4774. Ddd*newMenu.other.labelString:        Other...
  4775. Ddd*newMenu.other.documentationString: \
  4776. @rm Modify the selected display expression to create a new display
  4777.  
  4778. Ddd*newMenu.edit.labelString:        Edit Menu...
  4779. Ddd*newMenu.edit.documentationString: \
  4780. @rm Edit this menu
  4781.  
  4782. Ddd*shortcut_popup.other.labelString:    Other...
  4783. Ddd*shortcut_popup.other.documentationString: \
  4784. @rm Modify the selected display expression to create a new display
  4785.  
  4786. Ddd*shortcut_popup.edit.labelString:    Edit Menu...
  4787. Ddd*shortcut_popup.edit.documentationString: \
  4788. @rm Edit this menu
  4789.  
  4790. ! Compute all other documentation strings as needed
  4791. Ddd*newMenu*documentationString:
  4792. Ddd*shortcut_popup*documentationString:
  4793.  
  4794.  
  4795.  
  4796.  
  4797. !-----------------------------------------------------------------------------
  4798. ! Toolbar argument
  4799. !-----------------------------------------------------------------------------
  4800.  
  4801. Ddd*arg_label.labelString:    ():
  4802.  
  4803. Ddd*arg.value:            main
  4804. Ddd*arg*Text.value:        main
  4805.  
  4806. Ddd*arg.helpString:    \
  4807. @bs Argument@rm \n\
  4808. \n\
  4809. This is the argument @bf ()@rm  for the command buttons on the right.\n\
  4810. \n\
  4811. Edit @bf ()@rm  using the usual editing functions.\n\
  4812. Set @bf ()@rm  by selecting items from the source window or the data window.\n\
  4813. Clear @bf ()@rm  by clicking on the prompt @bf ():@rm .
  4814.  
  4815.  
  4816.  
  4817. !-----------------------------------------------------------------------------
  4818. ! Common Toolbar
  4819. !-----------------------------------------------------------------------------
  4820.  
  4821. Ddd*toolbar*helpString: \
  4822. @bs Toolbar@rm \n\
  4823. \n\
  4824. Set the argument @bf ()@rm  for the command buttons on the right.\n\
  4825. \n\
  4826. To get help on a command button, just point on it and press @key F1@rm .\n\
  4827. The item's functionality will be explained here.
  4828.  
  4829.  
  4830. ! All other values from the graph and source toolbar, below, apply here, too.
  4831.  
  4832.  
  4833. !-----------------------------------------------------------------------------
  4834. ! Graph Toolbar
  4835. !-----------------------------------------------------------------------------
  4836.  
  4837. ! Ddd*graph_toolbar*helpString: \
  4838. ! @rm Commands related to the data window.
  4839.  
  4840. Ddd*toolbar*dereference.labelString:     Display *()
  4841. Ddd*toolbar*detail.labelString:        Show ()
  4842. Ddd*toolbar*show_more.labelString:       Show More ()
  4843. Ddd*toolbar*show_just.labelString:       Show Just ()
  4844. Ddd*toolbar*show_detail.labelString:     Show All ()
  4845. Ddd*toolbar*hide_detail.labelString:     Hide ()
  4846. Ddd*toolbar*rotate.labelString:        Rotate ()
  4847. Ddd*toolbar*rotateAll.labelString:    Rotate All ()
  4848. Ddd*toolbar*new.labelString:        Display ()
  4849. Ddd*toolbar*new2.labelString:            Display ()
  4850. Ddd*toolbar*dereference2.labelString:    Display *()
  4851. Ddd*toolbar*delete2.labelString:    Undisplay ()
  4852. Ddd*toolbar*set.labelString:        Set ()
  4853. Ddd*toolbar*delete.labelString:        Undisplay ()
  4854.  
  4855. Ddd*toolbar*dereference.labelPixmap:         dispref
  4856. Ddd*toolbar*dereference.labelInsensitivePixmap:    dispref-xx
  4857. Ddd*toolbar*dereference.armPixmap:        dispref-arm
  4858.  
  4859. Ddd*toolbar*detail.labelPixmap:            show
  4860. Ddd*toolbar*detail.labelInsensitivePixmap:    show-xx
  4861. Ddd*toolbar*detail.armPixmap:            show-arm
  4862.  
  4863. Ddd*toolbar*rotate.labelPixmap:            rotate
  4864. Ddd*toolbar*rotate.labelInsensitivePixmap:    rotate-xx
  4865. Ddd*toolbar*rotate.armPixmap:            rotate-arm
  4866.  
  4867. Ddd*toolbar*new.labelPixmap:            display
  4868. Ddd*toolbar*new.labelInsensitivePixmap:        display-xx
  4869. Ddd*toolbar*new.armPixmap:            display-arm
  4870.  
  4871. Ddd*toolbar*set.labelPixmap:            set
  4872. Ddd*toolbar*set.labelInsensitivePixmap:        set-xx
  4873. Ddd*toolbar*set.armPixmap:            set-arm
  4874.  
  4875. Ddd*toolbar*delete.labelPixmap:            undisplay
  4876. Ddd*toolbar*delete.labelInsensitivePixmap:    undisplay-xx
  4877. Ddd*toolbar*delete.armPixmap:            undisplay-arm
  4878.  
  4879.  
  4880.  
  4881.  
  4882. Ddd*toolbar*new.helpString:\
  4883. @bf Display ()/Undisplay ()@rm \n\
  4884. \n\
  4885. If no display is selected, display the argument @bf ()@rm  in the data window.\n\
  4886. Otherwise, delete the selected displays.\n\
  4887. \n\
  4888. \
  4889. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  4890. \n\
  4891. \
  4892. @tt \267 @bf Shortcut 1@rm  @tt -@rm  User-defined shortcut 1.\n\
  4893. @tt \267 @bf Shortcut 2@rm  @tt -@rm  User-defined shortcut 2. ...\n\
  4894. @tt \267 @bf Other...@rm  @tt -@rm  Enter new shortcut.\n\
  4895. @tt \267 @bf Edit...@rm  @tt -@rm  Edit shortcuts.
  4896.  
  4897. Ddd*newMenu*helpString: \
  4898. @tt \267 @bf Shortcut 1@rm  @tt -@rm  User-defined shortcut 1.\n\
  4899. @tt \267 @bf Shortcut 2@rm  @tt -@rm  User-defined shortcut 2. ...\n\
  4900. @tt \267 @bf Other...@rm  @tt -@rm  Enter new shortcut.\n\
  4901. @tt \267 @bf Edit...@rm  @tt -@rm  Edit shortcuts.
  4902.  
  4903.  
  4904. Ddd*toolbar*new.tipString:\
  4905. @rm Display/Undisplay @bf ()@rm 
  4906. Ddd*toolbar*new.documentationString:\
  4907. @rm Display/Undisplay the argument @bf ()@rm  in the data window \
  4908. (hold for menu)
  4909.  
  4910. Ddd*toolbar*new2.documentationString:\
  4911. @rm Display the argument @bf ()@rm  in the data window.
  4912.  
  4913. Ddd*toolbar*dereference.helpString:\
  4914. @bf Display *()@rm \n\
  4915. \n\
  4916. Dereference the selected display.
  4917. Ddd*toolbar*dereference.tipString:\
  4918. @rm Dereference @bf ()@rm 
  4919. Ddd*toolbar*dereference.documentationString:\
  4920. @rm Display the dereferenced argument @bf ()@rm  in the data window.
  4921.  
  4922. Ddd*toolbar*dereference2.documentationString:\
  4923. @rm Display the dereferenced argument @bf ()@rm  in the data window.
  4924.  
  4925.  
  4926.  
  4927. Ddd*toolbar*detail.helpString:    \
  4928. @bf Show ()@rm  / @bf Hide ()@rm \n\
  4929. \n\
  4930. Show/Hide details of the selected displays.\n\
  4931. \n\
  4932. \
  4933. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  4934. \n\
  4935. \
  4936. @tt \267 @bf Show More@rm  @tt -@rm  Show more details.\n\
  4937. @tt \267 @bf Show Just@rm  @tt -@rm  Show details, excluding substructures. ...\n\
  4938. @tt \267 @bf Show All@rm  @tt -@rm  Show all details, including substructures.\n\
  4939. @tt \267 @bf Hide@rm  @tt -@rm  Hide Details.
  4940.  
  4941.  
  4942. Ddd*detailMenu*helpString:    \
  4943. @tt \267 @bf Show More@rm  @tt -@rm  Show more details.\n\
  4944. @tt \267 @bf Show Just@rm  @tt -@rm  Show details, excluding substructures. ...\n\
  4945. @tt \267 @bf Show All@rm  @tt -@rm  Show all details, including substructures.\n\
  4946. @tt \267 @bf Hide@rm  @tt -@rm  Hide Details.
  4947.  
  4948.  
  4949. Ddd*toolbar*detail.tipString:    \
  4950. @rm Show/Hide selected details
  4951. Ddd*toolbar*detail.documentationString: \
  4952. @rm Show/Hide details of the selected displays (hold for menu)
  4953.  
  4954. Ddd*toolbar*show_more.documentationString: \
  4955. @rm Show more details of the selected displays
  4956. Ddd*toolbar*show_just.documentationString: \
  4957. @rm Show details of the selected displays, hiding substructures
  4958. Ddd*toolbar*show_detail.documentationString: \
  4959. @rm Show all details of the selected displays, including substructures
  4960. Ddd*toolbar*hide_detail.documentationString: \
  4961. @rm Hide details of the selected displays
  4962.  
  4963.  
  4964. Ddd*toolbar*rotate.helpString:    \
  4965. @bf Rotate ()@rm \n\
  4966. \n\
  4967. Rotate the selected displays.\n\
  4968. \n\
  4969. \
  4970. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  4971. \n\
  4972. \
  4973. @tt \267 @bf Rotate All@rm  @tt -@rm  Rotate substructures too.
  4974.  
  4975.  
  4976. Ddd*rotateMenu*helpString:    \
  4977. @tt \267 @bf Rotate All@rm  @tt -@rm  Rotate substructures too.
  4978.  
  4979.  
  4980. Ddd*toolbar*rotate.tipString:    \
  4981. @rm Rotate selected displays
  4982. Ddd*toolbar*rotate.documentationString: \
  4983. @rm Rotate the selected displays (hold for menu)
  4984. Ddd*toolbar*rotateAll.documentationString: \
  4985. @rm Rotate the selected displays, including substructures
  4986.  
  4987. Ddd*toolbar*set.helpString:    \
  4988. @bf Set ()@rm \n\
  4989. \n\
  4990. Change the value of the argument @bf ()@rm .
  4991. Ddd*toolbar*set.tipString:    \
  4992. @rm Set the value of @bf ()@rm 
  4993. Ddd*toolbar*set.documentationString:    \
  4994. @rm Change the value of the argument @bf ()@rm 
  4995.  
  4996. Ddd*toolbar*delete.helpString:    \
  4997. @bf Undisplay ()@rm \n\
  4998. \n\
  4999. Delete the selected displays.
  5000. Ddd*toolbar*delete.tipString:    \
  5001. @rm Undisplay @bf ()@rm 
  5002. Ddd*toolbar*delete.documentationString:    \
  5003. @rm Delete the selected displays
  5004.  
  5005.  
  5006. !-----------------------------------------------------------------------------
  5007. ! Source Toolbar
  5008. !-----------------------------------------------------------------------------
  5009.  
  5010. Ddd*toolbar*lookup.labelString:        Lookup ()
  5011. Ddd*toolbar*breakAt.labelString:    Break at ()
  5012. Ddd*toolbar*breakAt2.labelString:    Set Breakpoint at ()
  5013. Ddd*toolbar*clearAt2.labelString:    Clear Breakpoint at ()
  5014. Ddd*toolbar*tempBreakAt.labelString:    Set Temporary Breakpoint at ()
  5015. Ddd*toolbar*regexBreakAt.labelString:    Set Breakpoints at Regexp ()
  5016. Ddd*toolbar*contUntil.labelString:    Continue Until ()
  5017. Ddd*toolbar*enableBreak.labelString:    Enable Breakpoint at ()
  5018. Ddd*toolbar*enableWatch.labelString:    Enable Watchpoint at ()
  5019. Ddd*toolbar*breakProperties.labelString: Breakpoint Properties...
  5020. Ddd*toolbar*watchProperties.labelString: Watchpoint Properties...
  5021. Ddd*toolbar*setPC.labelString:        Set Execution Position to ()
  5022. Ddd*toolbar*watch.labelString:        Unwatch ()
  5023. Ddd*toolbar*cwatch.labelString:        Set Watchpoint on ()
  5024. Ddd*toolbar*rwatch.labelString:        Set Read Watchpoint on ()
  5025. Ddd*toolbar*awatch.labelString:        Set Access Watchpoint on ()
  5026. Ddd*toolbar*unwatch.labelString:    Delete Watchpoint on ()
  5027. Ddd*toolbar*print.labelString:        Print ()
  5028. Ddd*toolbar*printRef.labelString:    Print *()
  5029. Ddd*toolbar*whatis.labelString:        Whatis ()
  5030. Ddd*toolbar*examine.labelString:    Examine ()...
  5031. Ddd*toolbar*display.labelString:    Display ()
  5032. Ddd*toolbar*dispRef.labelString:    Display *()
  5033. Ddd*toolbar*find.labelString:        @charset Find@small>> @charset()@rm 
  5034. Ddd*toolbar*findBackward.labelString:    @charset Find@small<< @charset()@rm 
  5035. Ddd*toolbar*findForward.labelString:    @charset Find@small>> @charset()@rm 
  5036.  
  5037. Ddd*toolbar*lookup.labelPixmap:            lookup
  5038. Ddd*toolbar*lookup.labelInsensitivePixmap:    lookup-xx
  5039. Ddd*toolbar*lookup.armPixmap:            lookup-arm
  5040.  
  5041. Ddd*toolbar*breakAt.labelPixmap:        break_at
  5042. Ddd*toolbar*breakAt.labelInsensitivePixmap:     break_at-xx
  5043. Ddd*toolbar*breakAt.armPixmap:             break_at-arm
  5044.  
  5045. Ddd*toolbar*watch.labelPixmap:             watch
  5046. Ddd*toolbar*watch.labelInsensitivePixmap:     watch-xx
  5047. Ddd*toolbar*watch.armPixmap:             watch-arm
  5048.  
  5049. Ddd*toolbar*print.labelPixmap:             print
  5050. Ddd*toolbar*print.labelInsensitivePixmap:     print-xx
  5051. Ddd*toolbar*print.armPixmap:             print-arm
  5052.  
  5053. Ddd*toolbar*display.labelPixmap:        display
  5054. Ddd*toolbar*display.labelInsensitivePixmap:     display-xx
  5055. Ddd*toolbar*display.armPixmap:             display-arm
  5056.  
  5057. Ddd*toolbar*dispRef.labelPixmap:        dispref
  5058. Ddd*toolbar*dispRef.labelInsensitivePixmap:     dispref-xx
  5059. Ddd*toolbar*dispRef.armPixmap:             dispref-arm
  5060.  
  5061. Ddd*toolbar*find.labelPixmap:             find_forward
  5062. Ddd*toolbar*find.labelInsensitivePixmap:     find_forward-xx
  5063. Ddd*toolbar*find.armPixmap:             find_forward-arm
  5064.  
  5065. Ddd*toolbar*lookup.helpString:    \
  5066. @bf Lookup ()@rm \n\
  5067. \n\
  5068. Lookup a line, file, function, variable, or breakpoint in the source.\n\
  5069. @tt \267 @rm If the argument @bf ()@rm  is empty, \
  5070. lookup the current execution position\n\
  5071.     (or cursor position, if there is no current execution position).\n\
  5072. @tt \267 @rm If @bf ()@rm  contains a number, \
  5073. lookup that line number in the current source.\n\
  5074. @tt \267 @rm If @bf ()@rm  contains `@tt @sl filename@rm :@sl line@rm @rm', lookup \
  5075. line number @sl line@rm \n\
  5076.     in the source file @sl filename@rm .\n\
  5077. @tt \267 @rm If @bf ()@rm  contains `@tt #@sl number@rm @rm', lookup breakpoint \
  5078. @sl number@rm .\n\
  5079. @tt \267 @rm If @bf ()@rm  contains an address, lookup that address.\n\
  5080. @tt \267 @rm If @bf ()@rm  contains a function or variable name, lookup \
  5081. the definition\n\
  5082.     of that function or variable.
  5083.  
  5084. Ddd*toolbar*lookup.tipString:    \
  5085. @rm Lookup @bf ()@rm  in the source
  5086. Ddd*toolbar*lookup.documentationString:    \
  5087. @rm Lookup a line, file, function, variable or breakpoint in the source
  5088.  
  5089.  
  5090. Ddd*toolbar*breakAt.helpString:    \
  5091. @bf Break at ()@rm  / @bf Clear at ()@rm \n\
  5092. \n\
  5093. Set or delete a breakpoint at the argument @bf ()@rm .\n\
  5094. \n\
  5095. \
  5096. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  5097. \n\
  5098. \
  5099. @tt \267 @bf Set Temporary Breakpoint at ()@rm  @tt -@rm  set temporary breakpoint.\n\
  5100. @tt \267 @bf Set Breakpoints at Regexp ()@rm  @tt -@rm  break at all functions matching ().\n\
  5101. @tt \267 @bf Continue Until ()@rm  @tt -@rm  set temporary breakpoint and resume execution.\n\
  5102. @tt \267 @bf Enable / Disable Breakpoint at ()@rm  @tt -@rm  enable or disable breakpoint.\n\
  5103. @tt \267 @bf Breakpoint Properties...@rm  @tt -@rm  set properties of breakpoint at ().\n\
  5104. @tt \267 @bf Set Execution Position to ()@rm  @tt -@rm  move execution position.
  5105.  
  5106.  
  5107. Ddd*breakAtMenu*helpString:    \
  5108. @tt \267 @bf Set Temporary Breakpoint at ()@rm  @tt -@rm  set temporary breakpoint.\n\
  5109. @tt \267 @bf Set Breakpoints at Regexp ()@rm  @tt -@rm  break at all functions matching ().\n\
  5110. @tt \267 @bf Continue Until ()@rm  @tt -@rm  set temporary breakpoint and resume execution.\n\
  5111. @tt \267 @bf Enable / Disable Breakpoint at ()@rm  @tt -@rm  enable or disable breakpoint.\n\
  5112. @tt \267 @bf Breakpoint Properties...@rm  @tt -@rm  set properties of breakpoint at ().\n\
  5113. @tt \267 @bf Set Execution Position to ()@rm  @tt -@rm  move execution position.
  5114.  
  5115.  
  5116. Ddd*toolbar*breakAt.tipString:    \
  5117. @rm Set/Delete breakpoint at @bf ()@rm 
  5118. Ddd*toolbar*breakAt.documentationString:    \
  5119. @rm Set or delete a breakpoint at the argument @bf ()@rm  (hold for menu)
  5120.  
  5121. Ddd*toolbar*tempBreakAt.documentationString: \
  5122. @rm Set a temporary breakpoint at the argument @bf ()@rm 
  5123. Ddd*toolbar*regexBreakAt.documentationString: \
  5124. @rm Set breakpoints on all functions matching the regular expression in @bf ()@rm 
  5125. Ddd*toolbar*contUntil.documentationString: \
  5126. @rm Set a temporary breakpoint at @bf ()@rm  and resume execution
  5127. Ddd*toolbar*enableBreak.documentationString: \
  5128. @rm Enable or disable the breakpoint at the argument @bf ()@rm 
  5129. Ddd*toolbar*enableWatch.documentationString: \
  5130. @rm Enable or disable the watchpoint on the argument @bf ()@rm 
  5131. Ddd*toolbar*breakProperties.documentationString: \
  5132. @rm Edit the properties of the breakpoint at the argument @bf ()@rm 
  5133. Ddd*toolbar*watchProperties.documentationString: \
  5134. @rm Edit the properties of the watchpoint on the argument @bf ()@rm 
  5135. Ddd*toolbar*setPC.documentationString: \
  5136. @rm Set the current execution position to @bf ()@rm 
  5137.  
  5138.  
  5139. Ddd*toolbar*print.helpString:    \
  5140. @bf Print ()@rm \n\
  5141. \n\
  5142. Print the argument @bf ()@rm  in the @GDB@ console.\n\
  5143. \n\
  5144. \
  5145. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  5146. \n\
  5147. \
  5148. @tt \267 @bf Print *()@rm  @tt -@rm  print dereferenced argument.\n\
  5149. @tt \267 @bf Whatis ()@rm  @tt -@rm  print type of argument.
  5150. @tt \267 @bf Examine ()@rm  @tt -@rm  examine memory starting at argument.
  5151.  
  5152. Ddd*printMenu*helpString:    \
  5153. @tt \267 @bf Print *()@rm  @tt -@rm  print dereferenced argument.\n\
  5154. @tt \267 @bf Whatis ()@rm  @tt -@rm  print type of argument.
  5155. @tt \267 @bf Examine ()@rm  @tt -@rm  examine memory starting at argument.
  5156.  
  5157.  
  5158. Ddd*toolbar*print.tipString:    \
  5159. @rm Print @bf ()@rm  in the debugger console
  5160. Ddd*toolbar*print.documentationString:    \
  5161. @rm Print the argument @bf ()@rm  in the @GDB@ console (hold for menu)
  5162. Ddd*toolbar*printRef.documentationString:    \
  5163. @rm Print the dereferenced argument @bf ()@rm  in the @GDB@ console
  5164. Ddd*toolbar*whatis.documentationString:    \
  5165. @rm Print the type of the argument @bf ()@rm  in the @GDB@ console
  5166. Ddd*toolbar*examine.documentationString:    \
  5167. @rm Examine memory starting at @bf ()@rm 
  5168.  
  5169.  
  5170. Ddd*toolbar*display.helpString:    \
  5171. @bf Display ()@rm \n\
  5172. \n\
  5173. Display the argument @bf ()@rm  in the data window.\n\
  5174. \n\
  5175. \
  5176. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  5177. \n\
  5178. \
  5179. @tt \267 @bf Display *()@rm  @tt -@rm  display dereferenced argument.
  5180.  
  5181. Ddd*displayMenu*helpString:    \
  5182. @tt \267 @bf Display *()@rm  @tt -@rm  display dereferenced argument.
  5183.  
  5184.  
  5185.  
  5186. Ddd*toolbar*display.tipString:    \
  5187. @rm Display @bf ()@rm  in the data window
  5188. Ddd*toolbar*display.documentationString:    \
  5189. @rm Display the argument @bf ()@rm  in the data window (hold for menu)
  5190. Ddd*toolbar*dispRef.documentationString:    \
  5191. @rm Display the dereferenced argument @bf ()@rm  in the data window
  5192.  
  5193.  
  5194. Ddd*toolbar*watch.helpString:    \
  5195. @bf Watch ()@rm  / @bf Unwatch()@rm \n\
  5196. \n\
  5197. Stop whenever the value of @bf ()@rm  changes.\n\
  5198. \n\
  5199. @bf Watch ()@rm  sets a @sl watchpoint@rm  on @bf ()@rm  - a special breakpoint that\n\
  5200. stops your program whenever the value of @bf ()@rm  changes.
  5201. \n\
  5202. To see all watchpoints, select @bf Data@symbol \256@bf Edit Watchpoints@rm .\n\
  5203. \n\
  5204. @bf Unwatch()@rm  deletes the @sl watchpoint@rm  associated with @bf ()@rm .\n\
  5205. \n\
  5206. \
  5207. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  5208. \n\
  5209. \
  5210. @tt \267 @bf Watchpoint Properties...@rm  @tt -@rm  set properties of watchpoint on @bf ()@rm .\n\
  5211. \n\
  5212. @tt \267 @bf Set watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  changes; same as @bf Watch()@rm .\n\
  5213. @tt \267 @bf Set read watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  is read.\n\
  5214. @tt \267 @bf Set access watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  is either read or written.\n\
  5215. \n\
  5216. Unless you have special hardware support, watchpoints slow down the\n\
  5217. debugged program by about two orders of magnitude.
  5218.  
  5219. Ddd*watchMenu*helpString:    \
  5220. @tt \267 @bf Watchpoint Properties...@rm  @tt -@rm  set properties of watchpoint on @bf ()@rm .\n\
  5221. \n\
  5222. @tt \267 @bf Set watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  changes; same as @bf Watch()@rm .\n\
  5223. @tt \267 @bf Set read watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  is read.\n\
  5224. @tt \267 @bf Set access watchpoint on ()@rm  @tt -@rm  stop whenever @bf ()@rm  is either read or written.\n\
  5225. \n\
  5226. Unless you have special hardware support, watchpoints slow down the\n\
  5227. debugged program by about two orders of magnitude.
  5228.  
  5229.  
  5230. Ddd*toolbar*watch.tipString:    \
  5231. @rm Stop whenever @bf ()@rm  changes
  5232. Ddd*toolbar*watch.documentationString:    \
  5233. @rm Stop whenever the value of @bf ()@rm  changes (hold for menu)
  5234. Ddd*toolbar*cwatch.documentationString:    \
  5235. @rm Stop whenever the value of @bf ()@rm  changes
  5236. Ddd*toolbar*rwatch.documentationString:    \
  5237. @rm Stop whenever @bf ()@rm  is read (requires hardware support)
  5238. Ddd*toolbar*awatch.documentationString:    \
  5239. @rm Stop whenever @bf ()@rm  is either read or written (requires hardware support)
  5240.  
  5241.  
  5242. Ddd*toolbar*find.helpString:    \
  5243. @bf @charset Find@small<< @charset()@rm  / @charset Find@small>> @charset()@rm @rm \n\
  5244. \n\
  5245. Search an occurrence of @bf ()@rm  in the current source text.\n\
  5246. \n\
  5247. See @bf Edit@symbol \256@bf Preferences@symbol \256@bf Source@rm  for search settings.\n\
  5248. \n\
  5249. \
  5250. Pulldown menu functions (press and hold @bs mouse button 1@rm ):\
  5251. \n\
  5252. \
  5253. @tt \267 @bf @charset Find@small<< @charset()@rm @rm  @tt -@rm  find backwards.\n\
  5254. @tt \267 @bf @charset Find@small>> @charset()@rm @rm  @tt -@rm  find forwards.
  5255.  
  5256. Ddd*findMenu*helpString:    \
  5257. @tt \267 @bf @charset Find@small<< @charset()@rm @rm  @tt -@rm  find backwards.\n\
  5258. @tt \267 @bf @charset Find@small>> @charset()@rm @rm  @tt -@rm  find forwards.
  5259.  
  5260.  
  5261. Ddd*toolbar*find.tipString:    \
  5262. @rm Find @bf ()@rm  in source
  5263. Ddd*toolbar*find.documentationString:    \
  5264. @rm Search @bf ()@rm  in the current source (hold for menu)
  5265. Ddd*toolbar*findBackward.documentationString:    \
  5266. @rm Search the previous occurrence of @bf ()@rm  in the source
  5267. Ddd*toolbar*findForward.documentationString:    \
  5268. @rm Search the next occurrence of @bf ()@rm  in the source
  5269.  
  5270.  
  5271. !-----------------------------------------------------------------------------
  5272. ! Status line
  5273. !-----------------------------------------------------------------------------
  5274.  
  5275. Ddd*status_form*helpString: \
  5276. @bs Status Line@rm \n\
  5277. \n\
  5278. The status line shows the last @GDB@ message as well as short DDD messages.\n\
  5279. To view tthe most recent messages, just click on the status line.\n\
  5280. \n\
  5281. The @GDB@ status indicator on the right side blinks while @GDB@ is busy.\n\
  5282. You can disable it by clicking on the indicator.
  5283.  
  5284. Ddd*status_form*borderWidth:        0
  5285. Ddd*status_form*marginWidth:        0
  5286. Ddd*status_form*marginHeight:        0
  5287. Ddd*status_form*marginTop:        0
  5288. Ddd*status_form*marginBottom:        0
  5289. Ddd*status_form*spacing:        0
  5290. Ddd*status_form*highlightThickness:     0
  5291.  
  5292. Ddd*status_form.arrow.tipString: \
  5293. @rm Show recent messages
  5294. Ddd*status_form.arrow.documentationString: \n\n
  5295.  
  5296. Ddd*status_form.status.alignment:    XmALIGNMENT_BEGINNING
  5297. Ddd*status_form.status.leftOffset:    5
  5298. Ddd*status_form.status.rightOffset:    5
  5299. Ddd*status_form.status.labelString:    Ready.
  5300. Ddd*status_form.status.fillOnArm:    off
  5301.  
  5302. Ddd*status_form.led.highlightThickness: 0
  5303. Ddd*status_form.led.labelString:
  5304. Ddd*status_form.led.visibleWhenOff:    off
  5305. Ddd*status_form.led.selectColor:    DarkGreen
  5306. Ddd*status_form.led.tipString:    \
  5307. @rm @GDB@ status
  5308. Ddd*status_form.led.documentationString: \
  5309. @rm @GDB@ status indicator: blinks while @GDB@ is busy \
  5310. (click to disable or enable)
  5311.  
  5312. Ddd*status_lines.marginWidth:        0
  5313. Ddd*status_lines.marginHeight:        0
  5314. Ddd*status_lines.borderWidth:        0
  5315. Ddd*status_lines.spacing:        0
  5316.  
  5317. Ddd*status_history.row.background:    Black
  5318.  
  5319.  
  5320. !-----------------------------------------------------------------------------
  5321. ! Source View
  5322. !-----------------------------------------------------------------------------
  5323.  
  5324. Ddd*source_text_w.scrollHorizontal:    off
  5325. Ddd*source_text_w.wordWrap:        on
  5326.  
  5327. Ddd*code_text_w.scrollHorizontal:    off
  5328. Ddd*code_text_w.wordWrap:        on
  5329.  
  5330. Ddd*source_text_w.helpString:    \
  5331. @bs Source Text Window@rm \n\
  5332. \n\
  5333. The source text window shows the source text of the debugged program.\n\
  5334. \n\
  5335. @bf Breakpoint area@rm \n\
  5336. On the left of the source code, line numbers and breakpoints are shown.\n\
  5337. @tt \267 @rm A plain stop sign or `@tt #@sl n@rm #@rm' indicates \
  5338. an enabled breakpoint.\n\
  5339. @tt \267 @rm A grey stop sign or `@tt _@sl n@rm _@rm' indicates \
  5340. a disabled breakpoint.\n\
  5341. @tt \267 @rm The next executed line is indicated by an arrow or `@tt >@rm'.\n\
  5342. \n\
  5343. Click @bs mouse button 1@rm  to select positions.\n\
  5344. Click @bs mouse button 3@rm  to set and modify breakpoints.\n\
  5345. \n\
  5346. @bf Source text area@rm \n\
  5347. On the right side, the source code is shown.\n\
  5348. \n\
  5349. Click @bs mouse button 1@rm  to select words.\n\
  5350. Drag with @bs mouse button 1@rm  to extend your selection.\n\
  5351. Click @bs mouse button 3@rm  to show values and lookup places.\n\
  5352. \n\
  5353. To view a specific source, use the @bf Lookup ()@rm  button below.
  5354.  
  5355. Ddd*code_text_w.helpString:    \
  5356. @bs Machine Code Window@rm \n\
  5357. \n\
  5358. The machine code window shows the machine code of the debugged program.\n\
  5359. \n\
  5360. @bf Breakpoint area@rm \n\
  5361. On the left of the machine code, addresses and breakpoints are shown.\n\
  5362. @tt \267 @rm A plain stop sign or `@tt #@sl n@rm #@rm' indicates \
  5363. an enabled breakpoint.\n\
  5364. @tt \267 @rm A grey stop sign or `@tt _@sl n@rm _@rm' indicates \
  5365. a disabled breakpoint.\n\
  5366. @tt \267 @rm The next executed location is indicated by an arrow or `@tt >@rm'.\n\
  5367. \n\
  5368. Click @bs mouse button 1@rm  to select addresses.\n\
  5369. Click @bs mouse button 3@rm  to set and modify breakpoints.\n\
  5370. \n\
  5371. @bf Machine code area@rm \n\
  5372. On the right side, the machine code instructions are shown.\n\
  5373. \n\
  5374. Click @bs mouse button 1@rm  to select words.\n\
  5375. Drag with @bs mouse button 1@rm  to extend your selection.\n\
  5376. Click @bs mouse button 3@rm  to show values and lookup places.\n\
  5377. \n\
  5378. To disassemble a specific function or address,\n\
  5379. use the @bf Lookup ()@rm  button below.
  5380.  
  5381. Ddd*source_view_shell.helpString:    \
  5382. @bs Source Window@rm \n\
  5383. \n\
  5384. The source window displays the source and machine code of the \
  5385. debugged program.\n\
  5386. \n\
  5387. The upper area shows the source code.\n\
  5388. The lower area shows the machine code.\n\
  5389. \n\
  5390. Use @bf Help@symbol \256@bf On Item@rm  to get\n\
  5391. detailed help on each of these areas.
  5392.  
  5393.  
  5394. !-----------------------------------------------------------------------------
  5395. ! Source Popup Menus
  5396. !-----------------------------------------------------------------------------
  5397.  
  5398. Ddd*line_popup.set.labelString:            Set Breakpoint
  5399. Ddd*line_popup.set.documentationString:    \
  5400. @rm Set a breakpoint at the selected position
  5401.  
  5402. Ddd*line_popup.set_temp.labelString:        Set Temporary Breakpoint
  5403. Ddd*line_popup.set_temp.documentationString:    \
  5404. @rm Set a temporary breakpoint which will be deleted when hit
  5405.  
  5406. Ddd*line_popup.temp_n_cont.labelString:        Continue Until Here
  5407. Ddd*line_popup.temp_n_cont.documentationString:    \
  5408. @rm Set a temporary breakpoint and resume execution
  5409.  
  5410. Ddd*line_popup.set_pc.labelString:        Set Execution Position
  5411. Ddd*line_popup.set_pc.documentationString:    \
  5412. @rm Set the current execution position to the selected position
  5413.  
  5414. Ddd*bp_popup.disable.labelString:        Disable Breakpoint
  5415. Ddd*bp_popup.disable.documentationString:    \
  5416. @rm Disable the selected breakpoint
  5417.  
  5418. Ddd*bp_popup.properties.labelString:        Properties...
  5419. Ddd*bp_popup.properties.documentationString:    \
  5420. @rm Edit the properties of the selected breakpoint
  5421.  
  5422. Ddd*bp_popup.delete.labelString:        Delete Breakpoint
  5423. Ddd*bp_popup.delete.documentationString:    \
  5424. @rm Delete the selected breakpoint
  5425.  
  5426. Ddd*bp_popup.set_pc.labelString:        Set Execution Position
  5427. Ddd*bp_popup.set_pc.documentationString:    \
  5428. @rm Set the current execution position to the selected position
  5429.  
  5430. Ddd*text_popup.print.documentationString: \
  5431. @rm Print the value of the selected item in the @GDB@ console
  5432.  
  5433. Ddd*text_popup.disp.documentationString: \
  5434. @rm Display the selected item in the data window
  5435.  
  5436. Ddd*text_popup.watch.documentationString: \
  5437. @rm Stop execution whenever the selected item changes
  5438.  
  5439. Ddd*text_popup.printRef.documentationString: \
  5440. @rm Print the dereferenced value of the selected item in the @GDB@ console
  5441.  
  5442. Ddd*text_popup.dispRef.documentationString: \
  5443. @rm Display the dereferenced item in the data window
  5444.  
  5445. Ddd*text_popup.watchRef.documentationString: \
  5446. @rm Stop execution whenever the dereferenced item changes
  5447.  
  5448. Ddd*text_popup.whatis.documentationString: \
  5449. @rm Print the type of the selected item in the @GDB@ console
  5450.  
  5451. Ddd*text_popup.lookup.documentationString: \
  5452. @rm Lookup definition of the selected item
  5453.  
  5454. Ddd*text_popup.breakAt.documentationString: \
  5455. @rm Set a breakpoint at the selected function
  5456.  
  5457. Ddd*text_popup.clearAt.documentationString: \
  5458. @rm Delete a breakpoint at the selected function
  5459.  
  5460.  
  5461. !-----------------------------------------------------------------------------
  5462. ! Source and Code Glyphs
  5463. !-----------------------------------------------------------------------------
  5464.  
  5465. Ddd*source_form_w.XmPushButton.shadowThickness:       0
  5466. Ddd*source_form_w.XmPushButton.highlightThickness: 0
  5467. Ddd*source_form_w.XmPushButton.marginHeight:       0
  5468. Ddd*source_form_w.XmPushButton.marginWidth:       0
  5469. Ddd*source_form_w.XmPushButton.borderWidth:       0
  5470.  
  5471. Ddd*code_form_w.XmPushButton.shadowThickness:       0
  5472. Ddd*code_form_w.XmPushButton.highlightThickness:   0
  5473. Ddd*code_form_w.XmPushButton.marginHeight:       0
  5474. Ddd*code_form_w.XmPushButton.marginWidth:       0
  5475. Ddd*code_form_w.XmPushButton.borderWidth:       0
  5476.  
  5477. Ddd*source_form_w.plain_arrow*helpString: \
  5478. @bf Current Execution Position@rm \n\
  5479. The plain arrow shows the current execution position in the lowest frame.\n\
  5480. \n\
  5481. To change the execution position, drag it with @bs mouse button 1@rm .
  5482. Ddd*source_form_w.plain_arrow*tipString: \
  5483. @rm Current execution position
  5484. Ddd*source_form_w.plain_arrow*documentationString: \
  5485. @rm Current execution position (drag to change)
  5486.  
  5487. Ddd*code_form_w.plain_arrow*helpString: \
  5488. @bf Current Program Counter@rm \n\
  5489. The plain arrow shows the current program counter in the lowest frame.\n\
  5490. \n\
  5491. To change the program counter, drag it with @bs mouse button 1@rm .
  5492. Ddd*code_form_w.plain_arrow*tipString: \
  5493. @rm Current program counter
  5494. Ddd*code_form_w.plain_arrow*documentationString: \
  5495. @rm Current program counter (drag to change)
  5496.  
  5497. Ddd*source_form_w.grey_arrow*helpString: \
  5498. @bf Last Execution Position@rm \n\
  5499. The grey arrow shows the last execution position in the current frame.
  5500. Ddd*source_form_w.grey_arrow*tipString: \
  5501. @rm Last execution position in current frame
  5502.  
  5503. Ddd*code_form_w.grey_arrow*helpString: \
  5504. @bf Last Program Counter@rm \n\
  5505. The grey arrow shows the last program counter in the current frame.
  5506. Ddd*code_form_w.grey_arrow*tipString: \
  5507. @rm Last program counter in current frame
  5508.  
  5509. Ddd*source_form_w.signal_arrow*helpString: \
  5510. @bf Current Execution Position (signaled)@rm \n\
  5511. The lightning arrow shows the current execution position after being\n\
  5512. stopped by a signal.\n\
  5513. \n\
  5514. To change the execution position, drag it with @bs mouse button 1@rm .
  5515. Ddd*source_form_w.signal_arrow*tipString: \
  5516. @rm Current execution position (stopped by signal)
  5517.  
  5518. Ddd*code_form_w.signal_arrow*helpString: \
  5519. @bf Current Program Counter (signaled)@rm \n\
  5520. The lightning arrow shows the current program counter after being\n\
  5521. stopped by a signal.\n\
  5522. \n\
  5523. To change the program counter, drag it with @bs mouse button 1@rm .
  5524. Ddd*code_form_w.signal_arrow*tipString: \
  5525. @rm Current program counter (stopped by signal)
  5526.  
  5527.  
  5528.  
  5529. Ddd*plain_stop.helpString: \
  5530. @bf Breakpoint (enabled)@rm \n\
  5531. The debugged program will stop when reaching this location.\n\
  5532. \n\
  5533. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5534. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5535. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5536. Ddd*plain_stop.tipString: 
  5537. Ddd*plain_stop.documentationString: 
  5538.  
  5539. Ddd*grey_stop.helpString: \
  5540. @bf Breakpoint (disabled)@rm \n\
  5541. A disabled breakpoint has no effect until reenabled.\n\
  5542. \n\
  5543. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5544. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5545. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5546. Ddd*grey_stop.tipString: 
  5547. Ddd*grey_stop.documentationString: 
  5548.  
  5549. Ddd*plain_cond.helpString: \
  5550. @bf Conditional breakpoint (enabled)@rm \n\
  5551. The debugged program will stop when reaching this location\n\
  5552. if the associated condition is true.\n\
  5553. \n\
  5554. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5555. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5556. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5557. Ddd*plain_cond.tipString: 
  5558. Ddd*plain_cond.documentationString: 
  5559.  
  5560. Ddd*grey_cond.helpString: \
  5561. @bf Conditional breakpoint (disabled)@rm \n\
  5562. A disabled breakpoint has no effect until reenabled.\n\
  5563. \n\
  5564. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5565. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5566. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5567. Ddd*grey_cond.tipString: 
  5568. Ddd*grey_cond.documentationString: 
  5569.  
  5570. Ddd*plain_temp.helpString: \
  5571. @bf Temporary breakpoint (enabled)@rm \n\
  5572. The debugged program will stop when reaching this location.\n\
  5573. The breakpoint will be deleted when hit.\n\
  5574. \n\
  5575. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5576. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5577. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5578. Ddd*plain_temp.tipString: 
  5579. Ddd*plain_temp.documentationString: 
  5580.  
  5581. Ddd*grey_temp.helpString: \
  5582. @bf Temporary breakpoint (disabled)@rm \n\
  5583. A disabled breakpoint has no effect until reenabled.\n\
  5584. \n\
  5585. To change the breakpoint properties, press @bs mouse button 3@rm .\n\
  5586. To move it to another location, drag it using @bs mouse button 1@rm .\n\
  5587. To copy it to another location, drag it using @key Shift@rm +@bs mouse button 1@rm .
  5588. Ddd*grey_temp.tipString: 
  5589. Ddd*grey_temp.documentationString: 
  5590.  
  5591.  
  5592.  
  5593. !-----------------------------------------------------------------------------
  5594. ! Main Window
  5595. !-----------------------------------------------------------------------------
  5596.  
  5597.  
  5598. Ddd.helpString:                \
  5599. @bs DDD Main Window@rm \n\
  5600. \n\
  5601. The main window consists of the following areas:\n\
  5602. \n\
  5603. @tt \267 @rm At the top, the @sl Data Window@rm  shows the data displays\n\
  5604.     of the debugged program.\n\
  5605. @tt \267 @rm In the center, the @sl Source Text Window@rm  shows the \
  5606. currently\n\
  5607.     executed source code.\n\
  5608. @tt \267 @rm Optionally, there may be a @sl Machine Code Window@rm  below\n\
  5609.     which shows the current machine code.\n\
  5610. @tt \267 @rm At the bottom, the @sl @GDB@ Console@rm  allows for \
  5611. interaction\n\
  5612.     with @GDB@ and the debugged program.\n\
  5613. \n\
  5614. Use @bf Help@symbol \256@bf On Item@rm  to get detailed \
  5615. help on any of these areas.
  5616. Ddd.main_window.helpString: \
  5617. @bs DDD Main Window@rm \n\
  5618. \n\
  5619. The main window consists of the following areas:\n\
  5620. \n\
  5621. @tt \267 @rm At the top, the @sl Data Window@rm  shows the data displays\n\
  5622.     of the debugged program.\n\
  5623. @tt \267 @rm In the center, the @sl Source Text Window@rm  shows the \
  5624. currently\n\
  5625.     executed source code.\n\
  5626. @tt \267 @rm Optionally, there may be a @sl Machine Code Window@rm  below\n\
  5627.     which shows the current machine code.\n\
  5628. @tt \267 @rm At the bottom, the @sl @GDB@ Console@rm  allows for \
  5629. interaction\n\
  5630.     with @GDB@ and the debugged program.\n\
  5631. \n\
  5632. Use @bf Help@symbol \256@bf On Item@rm  to get detailed \
  5633. help on any of these areas.
  5634.  
  5635.  
  5636.  
  5637. !-----------------------------------------------------------------------------
  5638. ! Debugger Console
  5639. !-----------------------------------------------------------------------------
  5640.  
  5641. Ddd*gdb_w.value: \
  5642. DDD 3.0 (i686-pc-linux-gnu), by Dorothea L\374tkehaus and Andreas Zeller.\n\
  5643. Copyright \251 1998 Technische Universit\344t Braunschweig, Germany.\n
  5644.  
  5645. Ddd*gdb_w.editable:            on
  5646. Ddd*gdb_w.allowResize:            on
  5647. Ddd*gdb_w.editMode:            XmMULTI_LINE_EDIT
  5648. Ddd*gdb_w.scrollHorizontal:        off
  5649. Ddd*gdb_w.wordWrap:            on
  5650. Ddd*gdb_w.autoShowCursorPosition:    on
  5651. Ddd*gdb_w.cursorPositionVisible:    on
  5652.  
  5653.  
  5654. Ddd*gdb_w.helpString:        \
  5655. @bs @GDB@ Console@rm \n\
  5656. \n\
  5657. The @GDB@ console shows the @GDB@ input and output\n\
  5658. as well as the input and output of the debugged program.\n\
  5659. \n\
  5660. You can enter @GDB@ commands here.\n\
  5661. \n\
  5662. To get a list of @GDB@ commands, enter `@tt help@rm' at the @GDB@ prompt.\n\
  5663. See the @bf Commands@rm  menu for the most important editing commands.
  5664.  
  5665. Ddd*command_shell.helpString:    \
  5666. @bs @GDB@ Console@rm \n\
  5667. \n\
  5668. The @GDB@ console shows the @GDB@ input and output\n\
  5669. as well as the input and output of the debugged program.\n\
  5670. \n\
  5671. You can enter @GDB@ commands here.\n\
  5672. \n\
  5673. To get a list of @GDB@ commands, enter `@tt help@rm' at the @GDB@ prompt.\n\
  5674. See the @bf Commands@rm  menu for the most important editing commands.
  5675.  
  5676.  
  5677.  
  5678. !-----------------------------------------------------------------------------
  5679. ! Console Popup Menu
  5680. !-----------------------------------------------------------------------------
  5681.  
  5682. Ddd*gdb_popup.clear_line.labelString:        Clear Line
  5683. Ddd*gdb_popup.clear_line.documentationString:    \
  5684. @rm Clear @GDB@ command line
  5685.  
  5686. Ddd*gdb_popup.clear_window.labelString:        Clear Window
  5687. Ddd*gdb_popup.clear_window.documentationString:    \
  5688. @rm Clear all before last @GDB@ prompt
  5689.  
  5690.  
  5691. !-----------------------------------------------------------------------------
  5692. ! Command Tool
  5693. !-----------------------------------------------------------------------------
  5694.  
  5695. ! The command tool is frequently moved around on top of other windows.
  5696. ! Hence, avoid extra redisplays.
  5697. Ddd*tool_shell*saveUnder: on
  5698.  
  5699. Ddd*tool_shell.helpString:        \
  5700. @bs Command Tool@rm \n\
  5701. \n\
  5702. By clicking on one of the buttons, \
  5703. the corresponding command is sent to @GDB@.\n\
  5704. Press @key F1@rm  on a button to get a short command description.
  5705.  
  5706. Ddd*tool_buttons.helpString:\
  5707. @bs Command Tool@rm \n\
  5708. \n\
  5709. By clicking on one of the buttons, \
  5710. the corresponding command is sent to @GDB@.\n\
  5711. Press @key F1@rm  on a button to get a short command description.
  5712.  
  5713. !-----------------------------------------------------------------------------
  5714. ! Debugger Buttons
  5715. !-----------------------------------------------------------------------------
  5716.  
  5717. Ddd*source_buttons.helpString:\
  5718. @bs Command Area@rm \n\
  5719. \n\
  5720. By clicking on one of the buttons, \
  5721. the corresponding command is sent to @GDB@.\n\
  5722. Press @key F1@rm  on a button to get a short command description.
  5723.  
  5724. Ddd*command_buttons.helpString:\
  5725. @bs Command Area@rm \n\
  5726. \n\
  5727. By clicking on one of the buttons, \
  5728. the corresponding command is sent to @GDB@.\n\
  5729. Press @key F1@rm  on a button to get a short command description.
  5730.  
  5731. Ddd*data_buttons.helpString:\
  5732. @bs Command Area@rm \n\
  5733. \n\
  5734. By clicking on one of the buttons, \
  5735. the corresponding command is sent to @GDB@.\n\
  5736. Press @key F1@rm  on a button to get a short command description.
  5737.  
  5738. ! An empty help string means that the help text for this button
  5739. ! is to be requested from GDB (via the GDB `help' command).
  5740. Ddd*source_buttons*XmPushButton.helpString:
  5741. Ddd*console_buttons*XmPushButton.helpString:
  5742. Ddd*data_buttons*XmPushButton.helpString:
  5743. Ddd*tool_buttons*XmPushButton.helpString:
  5744. Ddd*command_toolbar*XmPushButton.helpString:
  5745.  
  5746. ! Same applies for button tips.
  5747. Ddd*source_buttons*XmPushButton.tipString:
  5748. Ddd*console_buttons*XmPushButton.tipString:
  5749. Ddd*data_buttons*XmPushButton.tipString:
  5750. Ddd*tool_buttons*XmPushButton.tipString:
  5751. Ddd*command_toolbar*XmPushButton.tipString:
  5752.  
  5753. ! Special spacing
  5754. Ddd*source_buttons.spacing:        0
  5755. Ddd*console_buttons.spacing:        0
  5756. Ddd*data_buttons.spacing:        0
  5757. Ddd*source_buttons.packing:        XmPACK_TIGHT
  5758. Ddd*console_buttons.packing:        XmPACK_TIGHT
  5759. Ddd*data_buttons.packing:        XmPACK_TIGHT
  5760. Ddd*source_buttons.entryAlignment:  XmALIGNMENT_CENTER
  5761. Ddd*console_buttons.entryAlignment: XmALIGNMENT_CENTER
  5762. Ddd*data_buttons.entryAlignment:    XmALIGNMENT_CENTER
  5763. Ddd*source_buttons*alignment:        XmALIGNMENT_CENTER
  5764. Ddd*console_buttons*alignment:        XmALIGNMENT_CENTER
  5765. Ddd*data_buttons*alignment:        XmALIGNMENT_CENTER
  5766.  
  5767. Ddd*source_buttons.marginWidth:     0
  5768. Ddd*source_buttons.marginHeight:    0
  5769. Ddd*console_buttons.marginWidth:    0
  5770. Ddd*console_buttons.marginHeight:   0
  5771. Ddd*data_buttons.marginWidth:       0
  5772. Ddd*data_buttons.marginHeight:      0
  5773.  
  5774. ! Some buttons have a special meaning; 
  5775. ! so we must provide help on ourselves.
  5776. Ddd*?*break.helpString: \
  5777. @bf Interrupt@rm \n\
  5778. \n\
  5779. Interrupt the debugged process (or current @GDB@ command).\n\
  5780. (Equivalent to @key Esc@rm ).
  5781. Ddd*source_buttons*break.tipString: \
  5782. @rm Interrupt debugged program
  5783. Ddd*data_buttons*break.tipString: \
  5784. @rm Interrupt debugged program
  5785. Ddd*console_buttons*break.tipString: \
  5786. @rm Interrupt debugged program
  5787. Ddd*tool_buttons*break.tipString: \
  5788. @rm Interrupt debugged program
  5789. Ddd*command_toolbar*break.tipString: \
  5790. @rm Interrupt debugged program
  5791. Ddd*?*break.documentationString: \
  5792. @rm Interrupt the debugged process (or current @GDB@ command)
  5793.  
  5794. Ddd*?*Yes.helpString:    \
  5795. @bf Yes@rm \n\
  5796. \n\
  5797. Confirm the @GDB@ question.
  5798. Ddd*?*Yes.tipString: \
  5799. @rm Just say yes
  5800.  
  5801. Ddd*?*No.helpString:    \
  5802. @bf No@rm \n\
  5803. \n\
  5804. Do @sl not@rm  confirm the @GDB@ question.
  5805. Ddd*?*No.tipString: \
  5806. @rm Just say no
  5807.  
  5808. Ddd*?*Complete.helpString:    \
  5809. @bf Complete@rm \n\
  5810. \n\
  5811. Complete the current debugging command.  (Equivalent to @key TAB@rm ).
  5812. Ddd*?*Complete.tipString: \
  5813. @rm Complete current command
  5814.  
  5815. Ddd*?*Clear.helpString:    \
  5816. @bf Clear@rm \n\
  5817. \n\
  5818. Clear the current debugging command.  (Equivalent to @key Ctrl+U@rm ).
  5819. Ddd*?*Clear.tipString: \
  5820. @rm Clear current command
  5821.  
  5822. Ddd*?*Prev.helpString:    \
  5823. @bf Prev@rm \n\
  5824. \n\
  5825. Get the previous debugging command \
  5826. (Equivalent to @key Up@rm ).
  5827. Ddd*?*Prev.tipString: \
  5828. @rm Get previous command
  5829.  
  5830. Ddd*?*Next.helpString:    \
  5831. @bf Next@rm \n\
  5832. \n\
  5833. Get the next debugging command \
  5834. (Equivalent to @key Down@rm ).
  5835. Ddd*?*Next.tipString: \
  5836. @rm Get next command
  5837.  
  5838. Ddd*?*Apply.helpString:    \
  5839. @bf Apply@rm \n\
  5840. \n\
  5841. Execute the current debugging command.  (Equivalent to @key RETURN @symbol \277@rm ).
  5842. Ddd*?*Apply.tipString: \
  5843. @rm Execute current command
  5844.  
  5845. Ddd*?*Back.helpString:    \
  5846. @bf Back@rm \n\
  5847. \n\
  5848. Return to the previous source position.
  5849. Ddd*?*Back.tipString: \
  5850. @rm Previous source position
  5851.  
  5852. Ddd*?*Forward.helpString:    \
  5853. @bf Forward@rm \n\
  5854. \n\
  5855. Move forward to the next source position.
  5856. Ddd*?*Forward.tipString: \
  5857. @rm Next source position
  5858.  
  5859. Ddd*?*Edit.helpString:    \
  5860. @bf Edit@rm \n\
  5861. \n\
  5862. Invoke an editor for the current source file.
  5863. Ddd*?*Edit.tipString: \
  5864. @rm Edit source file
  5865. Ddd*?*Edit.documentationString: \
  5866. @rm Invoke text editor for the current source
  5867.  
  5868. Ddd*?*Make.helpString:    \
  5869. @bf Make@rm \n\
  5870. \n\
  5871. Run the make program with the most recently given arguments.
  5872. Ddd*?*Make.tipString: \
  5873. @rm Run the make program
  5874. Ddd*?*Make.documentationString: \
  5875. @rm Run the make program with the most recently given arguments.
  5876.  
  5877. Ddd*?*Reload.helpString:    \
  5878. @bf Reload@rm \n\
  5879. \n\
  5880. Reload the source from file.
  5881. Ddd*?*Reload.tipString: \
  5882. @rm Reload source file
  5883. Ddd*?*Reload.documentationString: \
  5884. @rm Reload current source file
  5885.  
  5886.  
  5887.  
  5888.  
  5889. !-----------------------------------------------------------------------------
  5890. ! Print Dialog
  5891. !-----------------------------------------------------------------------------
  5892.  
  5893. Ddd*print_popup.title: DDD: Print Graph
  5894. Ddd*print.okLabelString: Print
  5895.  
  5896. Ddd*print*to.labelString:              Print To
  5897. Ddd*print*toMenu.printer.labelString:           \
  5898. \ \ \ \ \ \ \ \ \ Printer\ \ \ \ \ \ \ \ \ 
  5899. Ddd*print*toMenu.file.labelString:              File
  5900.  
  5901. Ddd*print*toMenu.?.indicatorOn:               off
  5902. Ddd*print*toMenu.?.shadowThickness:           2
  5903. Ddd*print*toMenu.entryAlignment:           XmALIGNMENT_CENTER
  5904.  
  5905. Ddd*print*command.label.labelString:          Print Command
  5906. Ddd*print*command.text.columns:                    40
  5907.  
  5908. Ddd*print*name.label.labelString:          File Name
  5909. Ddd*print*name.text.columns:                    40
  5910. Ddd*print*name.text.value:                    dddgraph.ps
  5911.  
  5912. Ddd*print*type.labelString:                    File Type
  5913. Ddd*print*postscript.labelString:          PostScript
  5914. Ddd*print*xfig.labelString:              FIG
  5915.  
  5916. Ddd*print*what.labelString:                    Print
  5917. Ddd*print*all.labelString:              All Displays
  5918. Ddd*print*selected.labelString:              Selected Displays
  5919.  
  5920. Ddd*print*orientation.labelString:            Orientation
  5921. Ddd*print*portrait.labelString:              Portrait
  5922. Ddd*print*landscape.labelString:          Landscape
  5923.  
  5924. Ddd*print*size.labelString:                    Paper Size
  5925. Ddd*print*sizeMenu.orientation:                    XmVERTICAL
  5926. Ddd*print*sizeMenu.numColumns:                    3
  5927. Ddd*print*a4.labelString:              A4 (210mm \327 297mm)
  5928. Ddd*print*a3.labelString:              A3 (297mm \327 420mm)
  5929. Ddd*print*letter.labelString:              Letter (8\275" \327 11")
  5930. Ddd*print*legal.labelString:              Legal (8\275" \327 14")
  5931. Ddd*print*executive.labelString:          Executive (7\275" \327 10")
  5932. Ddd*print*custom.labelString:              Other...
  5933.  
  5934. Ddd*print*helpString: \
  5935. @rm You can print the graph on a PostScript@symbol \344 @rm  printer \
  5936. or print the graph in a file.\n\
  5937. Enter the print command or the file name in the appropriate fields.\n\
  5938. \n\
  5939. Files can be created in the following formats:\n\
  5940. @tt \267 @bf PostScript@rm  @tt -@rm  PostScript@symbol \344 @rm  format.\n\
  5941. @tt \267 @bf FIG@rm  @tt -@rm  FIG format (for the @tt xfig@rm  program).\n\
  5942. \n\
  5943. If you wish to print all displays, select @bf All Displays@rm .\n\
  5944. If you wish to print selected displays only, select\
  5945.  @bf Selected Displays@rm .\n\
  5946. For PostScript@symbol \344 @rm  format only, you can also specify \
  5947. orientation and paper size.\n\
  5948. \n\
  5949. To print, click on @bf Print@rm .
  5950.  
  5951. Ddd*paper_size_dialog_popup.title:          DDD: Paper Size
  5952. Ddd*paper_size_dialog.selectionLabelString:     Paper size
  5953. Ddd*paper_size_dialog*helpString: \
  5954. @rm Please enter the paper size in the format \
  5955. `@tt @sl width@rm  @tt x@rm  @sl height@rm @rm'.\n\
  5956. \n\
  5957. Examples:\n\
  5958. `@tt 42cm x 59.4cm@rm' @tt -@rm  A2 paper\n\
  5959. `@tt 7.5in x 10in@rm' @tt -@rm  Executive paper\n\
  5960. \n\
  5961. Supported units for @sl width@rm  and @sl height@rm  include:\n\
  5962. `@tt pt@rm' (points), `@tt in@rm' (inches),\n\
  5963. `@tt mm@rm' (millimeters), `@tt cm@rm' (centimeters).
  5964.  
  5965.  
  5966.  
  5967. !-----------------------------------------------------------------------------
  5968. ! File Selection Dialogs
  5969. !-----------------------------------------------------------------------------
  5970.  
  5971. Ddd*exec_files_popup.title:           DDD: Open Program
  5972. Ddd*exec_files.okLabelString:       Open
  5973. Ddd*exec_files.selectionLabelString: Program
  5974. Ddd*exec_files*helpString:       \
  5975. @rm Enter the name of the program to be debugged in the argument field.\n\
  5976. \n\
  5977. The program is read for its symbols, for getting the contents\
  5978.  of pure memory,\n\
  5979. and it is the program executed when you use the `@tt run@rm' command.\n\
  5980. If the program file cannot be found as specified,\
  5981.  your execution directory path\n\
  5982. (@tt $PATH@rm ) is searched for a command of that name.\n\
  5983. No argument means to have no executable file and no symbols.\n\
  5984. \n\
  5985. Click on @bf Open@rm  to open the selected file.\n\
  5986. Click on @bf Filter@rm  to apply the given filter.
  5987.  
  5988. Ddd*core_files_popup.title:           DDD: Open Core Dump
  5989. Ddd*core_files.okLabelString:       Open
  5990. Ddd*core_files.selectionLabelString: Core Dump
  5991. Ddd*core_files*helpString:       \
  5992. @rm Enter the name of a core dump in the argument field.\n\
  5993. \n\
  5994. The core dump is used for examining memory and registers.\n\
  5995. No argument means to have no core file.\n\
  5996. \n\
  5997. Before using @bf Open Core@rm , you should use @bf File@symbol \256@bf Open Program@rm \n\
  5998. to specify the program causing the core dump, and to load its symbol table.\n\
  5999. \n\
  6000. Click on @bf Open@rm  to open the selected core dump.\n\
  6001. Click on @bf Filter@rm  to apply the given filter.
  6002.  
  6003. Ddd*source_files_popup.title:           DDD: Open Source
  6004. Ddd*source_files.okLabelString:       Open
  6005. Ddd*source_files.selectionLabelString: Source File
  6006. Ddd*source_files*helpString:    \
  6007. @rm Enter the name of a source file in the argument field.\n\
  6008. \n\
  6009. The source file is shown in the source window and may be used\n\
  6010. for setting or clearing breakpoints.\n\
  6011. \n\
  6012. Before using @bf Open Source@rm , you should use @bf File@symbol \256@bf Open Program@rm \n\
  6013. to specify the executable program, and to load its symbol table.\n\
  6014. \n\
  6015. Click on @bf Open@rm  to open the selected source file.\n\
  6016. Click on @bf Filter@rm  to apply the given filter.
  6017.  
  6018. Ddd*processes_popup.title: DDD: Attach to Process
  6019. Ddd*processes.listLabelString:    Processes
  6020. Ddd*processes.selectionPolicy:    XmSINGLE_SELECT
  6021.  
  6022. Ddd*processes.okLabelString:    Attach
  6023. Ddd*processes.applyLabelString:    Update
  6024.  
  6025. Ddd*processes*helpString:    \
  6026. @rm Select a running process of the program to be debugged.\n\
  6027. \n\
  6028. An attached process is stopped by DDD. You can examine and modify an\n\
  6029. attached process with all the DDD commands that are ordinarily available\n\
  6030. when you start processes with @bf Run@rm . You can insert breakpoints; you \n\
  6031. can step and continue; you can modify storage.  If you would rather the\n\
  6032. process continue running, you may use the @bf Continue@rm  command after\n\
  6033. attaching DDD to the process.\n\
  6034. \n\
  6035. When you have finished debugging the attached process, you can use\n\
  6036. @bf Detach Process@rm  to release it from DDD control.  Detaching \
  6037. the process\n\
  6038. continues its execution.\n\
  6039. \n\
  6040. Before using @bf Attach@rm , you should use @bf File@symbol \256@bf Open Program@rm \n\
  6041. to specify the program running in the process, and to load its symbol table.\n\
  6042. \n\
  6043. Click on @bf Attach@rm  to attach to the selected process.\n\
  6044. Click on @bf Update@rm  to update the list of processes.
  6045.  
  6046.  
  6047. Ddd*classes_popup.title:         DDD: Open Class
  6048. Ddd*classes.listLabelString:        Classes
  6049. Ddd*classes.selectionLabelString:     Open Class
  6050. Ddd*classes*selectionPolicy:        XmSINGLE_SELECT
  6051. Ddd*classes*okLabelString:         Open
  6052. Ddd*classes*applyLabelString:         Update
  6053. Ddd*classes*helpString:    \
  6054. @rm Please select a class to be debugged.\n\
  6055. \n\
  6056. These classes all have corresponding @tt .java@rm  sources in the class path.\n\
  6057. To search for other classes, select @bf Edit@symbol \256@bf JDB Settings@rm \n\
  6058. and add their directories to the class path.\n\
  6059. \n\
  6060. Click on @bf Open@rm  to open the selected class.\n\
  6061. Click on @bf Update@rm  to scan the class path once more.
  6062.  
  6063.  
  6064. Ddd*sources_popup.title:         DDD: Open Source
  6065. Ddd*sources.listLabelString:        Sources
  6066. Ddd*sources.selectionLabelString:     Open Source
  6067. Ddd*sources*selectionPolicy:        XmSINGLE_SELECT
  6068. Ddd*sources*okLabelString:         Open
  6069. Ddd*sources*applyLabelString:         Lookup
  6070. Ddd*sources*helpString:    \
  6071. @rm Please select a source to be opened.\n\
  6072. \n\
  6073. These are the accessible source files of your program.\n\
  6074. To search for other sources, select @bf Edit@symbol \256@bf @GDB@ Settings@rm \n\
  6075. and add their directories to the source path.\n\
  6076. \n\
  6077. Click on @bf Open@rm  to open the selected source and close this window.\n\
  6078. Click on @bf Lookup@rm  to lookup the selected source.
  6079.  
  6080.  
  6081. Ddd*sessions_to_open_popup.title:         DDD: Open Session
  6082. Ddd*sessions_to_open.listLabelString:        Sessions
  6083. Ddd*sessions_to_open.selectionLabelString:     Open Session
  6084. Ddd*sessions_to_open*selectionPolicy:        XmSINGLE_SELECT
  6085. Ddd*sessions_to_open*okLabelString:         Open
  6086. Ddd*sessions_to_open*applyLabelString:         Delete
  6087. Ddd*sessions_to_open*helpString:    \
  6088. @rm Enter the name of a DDD session in the argument field.\n\
  6089. \n\
  6090. A DDD session records the state of a debugging session,\n\
  6091. such that you can exit debugging sessions and resume later.\n\
  6092. \n\
  6093. Click on @bf Open@rm  to open the selected session.\n\
  6094. Click on @bf Delete@rm  to delete the selected session.
  6095.  
  6096.  
  6097. Ddd*sessions_to_save_popup.title:         DDD: Save Session
  6098. Ddd*sessions_to_save.listLabelString:        Sessions
  6099. Ddd*sessions_to_save.selectionLabelString:     Save Session
  6100. Ddd*sessions_to_save*selectionPolicy:        XmSINGLE_SELECT
  6101. Ddd*sessions_to_save*okLabelString:         Save
  6102. Ddd*sessions_to_save*applyLabelString:         Delete
  6103. Ddd*sessions_to_save*dump.labelString:        Include Core Dump
  6104. Ddd*sessions_to_save*dump.alignment:        XmALIGNMENT_BEGINNING
  6105. Ddd*sessions_to_save*method.labelString:    via
  6106. Ddd*sessions_to_save*kill.labelString:        Killing the Debuggee
  6107. Ddd*sessions_to_save*ptrace.labelString:    The ptrace() call
  6108. Ddd*sessions_to_save*gcore.labelString:        The `gcore' Command
  6109.  
  6110. Ddd*sessions_to_save*helpString:    \
  6111. @rm Enter the name of a DDD session in the argument field.\n\
  6112. \n\
  6113. A DDD session records the state of a debugging session,\n\
  6114. such that you can exit debugging sessions and resume later.\n\
  6115. \n\
  6116. If @bf Include Core Dump@rm  is set, DDD includes a core dump of the\n\
  6117. program being debugged.  This allows DDD to restore memory\n\
  6118. contents and data displays when restoring the session.\n\
  6119. \n\
  6120. DDD provides up to three ways to get a core dump:\n\
  6121. @tt \267 @bf Killing the Debuggee@rm  @tt -@rm  kill the debugged program..\n\
  6122.     Works fine, but loses the current process.\n\
  6123. @tt \267 @bf The `gcore' Command@rm  @tt -@rm  an external program to get a core\n\
  6124.     file from a running process..\n\
  6125.     The process may continue for a few steps after the `gcore'\n\
  6126.     command is done.\n\
  6127. @tt \267 @bf The ptrace() call@rm  @tt -@rm  a system call to get a core file.\n\
  6128.     Safe, but may result in a hanging GDB.\n\
  6129. \n\
  6130. Click on @bf Save@rm  to save the current DDD session.\n\
  6131. Click on @bf Delete@rm  to delete the selected session.
  6132.  
  6133.  
  6134. !-----------------------------------------------------------------------------
  6135. ! Breakpoint Editor
  6136. !-----------------------------------------------------------------------------
  6137.  
  6138. Ddd*edit_breakpoints_dialog_popup.title: DDD: Breakpoint and Watchpoint Editor
  6139. Ddd*edit_breakpoints_dialog.listLabelString: Breakpoints and Watchpoints
  6140. Ddd*edit_breakpoints_dialog*buttons.orientation: XmHORIZONTAL
  6141. Ddd*edit_breakpoints_dialog.okLabelString:     Close
  6142.  
  6143. Ddd*edit_breakpoints_dialog*buttons*labelType:  XmPIXMAP
  6144. Ddd*edit_breakpoints_dialog.childPlacement:  XmPLACE_TOP
  6145.  
  6146. Ddd*edit_breakpoints_dialog*helpString:         \
  6147. @bs Breakpoint and Watchpoint Editor@rm \n\
  6148. \n\
  6149. @tt \267 @bf Props...@rm  @tt -@rm  set or modify an item's properties.\n\
  6150. @tt \267 @bf Lookup@rm  @tt -@rm  lookup selected item.\n\
  6151. @tt \267 @bf Print@rm  @tt -@rm  print value of selected breakpoint.\n\
  6152. @tt \267 @bf Break...@rm  @tt -@rm  create a new breakpoint.\n\
  6153. @tt \267 @bf Watch...@rm  @tt -@rm  create a new watchpoint.\n\
  6154. @tt \267 @bf Enable@rm  @tt -@rm  enable all selected items.\n\
  6155. @tt \267 @bf Disable@rm  @tt -@rm  disable all selected items.\n\
  6156. @tt \267 @bf Delete@rm  @tt -@rm  delete all selected items.\n\
  6157. \n\
  6158. Use @key Ctrl@rm +@bs mouse button 1@rm  to toggle selections.
  6159.  
  6160. Ddd*edit_breakpoints_dialog*new_bp.labelString:               New Breakpoint...
  6161. Ddd*edit_breakpoints_dialog*new_bp.labelPixmap:               new_break
  6162. Ddd*edit_breakpoints_dialog*new_bp.labelInsensitivePixmap: new_break-xx
  6163. Ddd*edit_breakpoints_dialog*new_bp.armPixmap:              new_break-arm
  6164.  
  6165. Ddd*edit_breakpoints_dialog*new_bp.tipString:     \
  6166. @rm Set new breakpoint
  6167. Ddd*edit_breakpoints_dialog*new_bp.documentationString: \
  6168. @rm Set breakpoint at specified line or function
  6169.  
  6170. Ddd*edit_breakpoints_dialog*new_wp.labelString:          New Watchpoint...
  6171. Ddd*edit_breakpoints_dialog*new_wp.labelPixmap:               new_watch
  6172. Ddd*edit_breakpoints_dialog*new_wp.labelInsensitivePixmap: new_watch-xx
  6173. Ddd*edit_breakpoints_dialog*new_wp.armPixmap:              new_watch-arm
  6174.  
  6175. Ddd*edit_breakpoints_dialog*new_wp.tipString:     \
  6176. @rm Set new watchpoint
  6177. Ddd*edit_breakpoints_dialog*new_wp.documentationString: \
  6178. @rm Set watchpoint on specified variable
  6179.  
  6180. Ddd*edit_breakpoints_dialog*lookup.labelString:           Lookup
  6181. Ddd*edit_breakpoints_dialog*lookup.labelPixmap:               lookup
  6182. Ddd*edit_breakpoints_dialog*lookup.labelInsensitivePixmap: lookup-xx
  6183. Ddd*edit_breakpoints_dialog*lookup.armPixmap:              lookup-arm
  6184.  
  6185. Ddd*edit_breakpoints_dialog*lookup.tipString:     \
  6186. @rm Lookup selected item
  6187. Ddd*edit_breakpoints_dialog*lookup.documentationString: \
  6188. @rm Lookup selected item in the source
  6189.  
  6190. Ddd*edit_breakpoints_dialog*print.labelString:           Print
  6191. Ddd*edit_breakpoints_dialog*print.labelPixmap:              print
  6192. Ddd*edit_breakpoints_dialog*print.labelInsensitivePixmap: print-xx
  6193. Ddd*edit_breakpoints_dialog*print.armPixmap:              print-arm
  6194.  
  6195. Ddd*edit_breakpoints_dialog*print.tipString:     \
  6196. @rm Print watched expression
  6197. Ddd*edit_breakpoints_dialog*print.documentationString: \
  6198. @rm Print value of watched expression in the @GDB@ console
  6199.  
  6200. Ddd*edit_breakpoints_dialog*enable.labelString:           Enable
  6201. Ddd*edit_breakpoints_dialog*enable.labelPixmap:               enable
  6202. Ddd*edit_breakpoints_dialog*enable.labelInsensitivePixmap: enable-xx
  6203. Ddd*edit_breakpoints_dialog*enable.armPixmap:              enable-arm
  6204.  
  6205. Ddd*edit_breakpoints_dialog*enable.tipString:     \
  6206. @rm Enable selected items
  6207. Ddd*edit_breakpoints_dialog*enable.documentationString: \
  6208. @rm Enable the selected items
  6209.  
  6210. Ddd*edit_breakpoints_dialog*disable.labelString:       Disable
  6211. Ddd*edit_breakpoints_dialog*disable.labelPixmap:        disable
  6212. Ddd*edit_breakpoints_dialog*disable.labelInsensitivePixmap: disable-xx
  6213. Ddd*edit_breakpoints_dialog*disable.armPixmap:              disable-arm
  6214.  
  6215. Ddd*edit_breakpoints_dialog*disable.tipString:     \
  6216. @rm Disable selected items
  6217. Ddd*edit_breakpoints_dialog*disable.documentationString: \
  6218. @rm Disable the selected items
  6219.  
  6220. Ddd*edit_breakpoints_dialog*properties.labelString:     Properties...
  6221. Ddd*edit_breakpoints_dialog*properties.labelPixmap:           properties
  6222. Ddd*edit_breakpoints_dialog*properties.labelInsensitivePixmap: properties-xx
  6223. Ddd*edit_breakpoints_dialog*properties.armPixmap:              properties-arm
  6224.  
  6225. Ddd*edit_breakpoints_dialog*properties.tipString:     \
  6226. @rm Edit properties
  6227. Ddd*edit_breakpoints_dialog*properties.documentationString:     \
  6228. @rm Specify the properties of the selected items
  6229.  
  6230. Ddd*edit_breakpoints_dialog*delete.labelString:           Delete
  6231. Ddd*edit_breakpoints_dialog*delete.labelPixmap:               delete
  6232. Ddd*edit_breakpoints_dialog*delete.labelInsensitivePixmap: delete-xx
  6233. Ddd*edit_breakpoints_dialog*delete.armPixmap:              delete-arm
  6234.  
  6235. Ddd*edit_breakpoints_dialog*delete.tipString:     \
  6236. @rm Delete selected items
  6237. Ddd*edit_breakpoints_dialog*delete.documentationString:     \
  6238. @rm Delete the selected items
  6239.  
  6240.  
  6241.  
  6242. !-----------------------------------------------------------------------------
  6243. ! New Breakpoint, New Watchpoint dialogs
  6244. !-----------------------------------------------------------------------------
  6245.  
  6246. Ddd*new_breakpoint_dialog_popup.title: DDD: New Breakpoint
  6247. Ddd*new_breakpoint_dialog*label.labelString: Set Breakpoint at
  6248. Ddd*new_breakpoint_dialog.okLabelString: Set
  6249.  
  6250. Ddd*new_breakpoint_dialog*helpString:    \
  6251. \
  6252. @rm Please enter a breakpoint you want to set.\n\
  6253. Enter its name in the argument field.\n\
  6254. \n\
  6255. The argument may be a @sl line number@rm , a @sl function name@rm ,\
  6256.  or `@tt *@rm' and an address.\n\
  6257. If a @sl line number@rm  is specified, break at start of code for that line.\n\
  6258. If a @sl function name@rm  is specified, break at start of code\
  6259.  for that function.\n\
  6260. If an @sl address@rm  is specified, break at that exact address.\n\
  6261. Without argument, use current execution address of selected stack frame.\n\
  6262. This is useful for breaking on return to a stack frame.\n\
  6263. \n\
  6264. Multiple breakpoints at one place are permitted, and useful if conditional.\n\
  6265. \n\
  6266. Click on @bf Set@rm  to set the specified breakpoint.
  6267.  
  6268.  
  6269. Ddd*new_watchpoint_dialog_popup.title: DDD: New Watchpoint
  6270. Ddd*new_watchpoint_dialog*set.labelString:    Set
  6271. Ddd*new_watchpoint_dialog*cwatch.labelString:    Watchpoint
  6272. Ddd*new_watchpoint_dialog*rwatch.labelString:    Read Watchpoint
  6273. Ddd*new_watchpoint_dialog*awatch.labelString:    Access Watchpoint
  6274. Ddd*new_watchpoint_dialog*on.labelString:    on
  6275. Ddd*new_breakpoint_dialog.okLabelString: Set
  6276.  
  6277. Ddd*new_watchpoint_dialog*helpString:    \
  6278. @rm Please enter a variable whose value you want to watch.\n\
  6279. Enter its name in the argument field.\n\
  6280. \n\
  6281. @tt \267 @bf Set Watchpoint@rm  @tt -@rm  stop whenever the variable value changes.\n\
  6282. @tt \267 @bf Set Read Watchpoint@rm  @tt -@rm  stop whenever the variable is read.\n\
  6283. @tt \267 @bf Set Access Watchpoint@rm  @tt -@rm  \
  6284. stop whenever the variable is either read or written.\n\
  6285. \n\
  6286. Click on @bf Set@rm  to set the specified watchpoint.
  6287.  
  6288.  
  6289.  
  6290. !-----------------------------------------------------------------------------
  6291. ! Breakpoint Properties
  6292. !-----------------------------------------------------------------------------
  6293.  
  6294. Ddd*breakpoint_properties_popup.title:    DDD: Properties
  6295.  
  6296. Ddd*breakpoint_properties.okLabelString:            Close
  6297.  
  6298. Ddd*breakpoint_properties*title.labelString:        Breakpoint
  6299. Ddd*breakpoint_properties*titleMenu.marginWidth:    0
  6300. Ddd*breakpoint_properties*titleMenu.marginWidth:    0
  6301. Ddd*breakpoint_properties*titlePanel.marginWidth:    0
  6302. Ddd*breakpoint_properties*titlePanel.marginHeight:    0
  6303.  
  6304. Ddd*breakpoint_properties*enabled.labelString:        Enabled
  6305. Ddd*breakpoint_properties*temporary.labelString:    Temporary
  6306.  
  6307. Ddd*breakpoint_properties*lookup.labelType:        XmPIXMAP
  6308. Ddd*breakpoint_properties*lookup.labelString:        Lookup
  6309. Ddd*breakpoint_properties*lookup.labelPixmap:             lookup
  6310. Ddd*breakpoint_properties*lookup.labelInsensitivePixmap: lookup-xx
  6311. Ddd*breakpoint_properties*lookup.armPixmap:              lookup-arm
  6312. Ddd*breakpoint_properties*lookup.tipString:             \
  6313. @rm Lookup breakpoint
  6314.  
  6315. Ddd*breakpoint_properties*print.labelType:        XmPIXMAP
  6316. Ddd*breakpoint_properties*print.labelString:        Print
  6317. Ddd*breakpoint_properties*print.labelPixmap:            print
  6318. Ddd*breakpoint_properties*print.labelInsensitivePixmap: print-xx
  6319. Ddd*breakpoint_properties*print.armPixmap:              print-arm
  6320. Ddd*breakpoint_properties*print.tipString:             \
  6321. @rm Print watchpoint value
  6322.  
  6323. Ddd*breakpoint_properties*enable.labelType:        XmPIXMAP
  6324. Ddd*breakpoint_properties*enable.labelString:        Enable
  6325. Ddd*breakpoint_properties*enable.labelPixmap:             enable
  6326. Ddd*breakpoint_properties*enable.labelInsensitivePixmap: enable-xx
  6327. Ddd*breakpoint_properties*enable.armPixmap:              enable-arm
  6328. Ddd*breakpoint_properties*enable.tipString:             \
  6329. @rm Enable breakpoint
  6330.  
  6331. Ddd*breakpoint_properties*disable.labelType:        XmPIXMAP
  6332. Ddd*breakpoint_properties*disable.labelString:        Disable
  6333. Ddd*breakpoint_properties*disable.labelPixmap:             disable
  6334. Ddd*breakpoint_properties*disable.labelInsensitivePixmap: disable-xx
  6335. Ddd*breakpoint_properties*disable.armPixmap:              disable-arm
  6336. Ddd*breakpoint_properties*disable.tipString:             \
  6337. @rm Disable breakpoint
  6338.  
  6339. Ddd*breakpoint_properties*temporary.labelType:        XmPIXMAP
  6340. Ddd*breakpoint_properties*temporary.labelString:         Temp 
  6341. Ddd*breakpoint_properties*temporary.labelPixmap:             maketemp
  6342. Ddd*breakpoint_properties*temporary.labelInsensitivePixmap: maketemp-xx
  6343. Ddd*breakpoint_properties*temporary.armPixmap:              maketemp-arm
  6344. Ddd*breakpoint_properties*temporary.tipString:           \
  6345. @rm Make breakpoint temporary
  6346. Ddd*breakpoint_properties*temporary.documentationString:           \
  6347. @rm Make breakpoint temporary, such that it will be deleted when hit
  6348.  
  6349. Ddd*breakpoint_properties*delete.labelType:        XmPIXMAP
  6350. Ddd*breakpoint_properties*delete.labelString:        Delete
  6351. Ddd*breakpoint_properties*delete.labelPixmap:             delete
  6352. Ddd*breakpoint_properties*delete.labelInsensitivePixmap: delete-xx
  6353. Ddd*breakpoint_properties*delete.armPixmap:              delete-arm
  6354. Ddd*breakpoint_properties*delete.tipString:           \
  6355. @rm Delete breakpoint
  6356.  
  6357. Ddd*breakpoint_properties*condition.label.labelString:    Condition
  6358. Ddd*breakpoint_properties*condition*text*columns:       30
  6359.  
  6360. Ddd*breakpoint_properties*ignore.label.labelString:    Ignore Count
  6361. Ddd*breakpoint_properties*ignore*text.columns:          4
  6362. Ddd*breakpoint_properties*ignore*text.maximumValue:    9999
  6363.  
  6364. Ddd*breakpoint_properties*spinBoxChildType:        XmNUMERIC
  6365. Ddd*breakpoint_properties*arrowLayout:                XmARROWS_END
  6366. Ddd*breakpoint_properties*spin.marginWidth:        0
  6367. Ddd*breakpoint_properties*spin.marginHeight:        0
  6368.  
  6369. Ddd*breakpoint_properties*commands.labelString:        Commands
  6370.  
  6371. Ddd*breakpoint_properties*commandsMenu.packing:        XmPACK_COLUMN
  6372. Ddd*breakpoint_properties*commandsMenu.entryAlignment:    XmALIGNMENT_CENTER
  6373. Ddd*breakpoint_properties*record.labelString:        \ \ \ Record\ \ \ 
  6374. Ddd*breakpoint_properties*end.labelString:        End
  6375. Ddd*breakpoint_properties*edit.labelString:        Edit @small>>
  6376.  
  6377. Ddd*breakpoint_properties*record.tipString: \
  6378. @rm Record breakpoint commands
  6379. Ddd*breakpoint_properties*record.documentationString: \
  6380. @rm Record commands to be executed when breakpoint is hit
  6381.  
  6382. Ddd*breakpoint_properties*end.tipString: \
  6383. @rm End recording
  6384. Ddd*breakpoint_properties*end.documentationString: \
  6385. @rm End command recording
  6386.  
  6387. Ddd*breakpoint_properties*edit.tipString: \
  6388. @rm Edit breakpoint commands
  6389.  
  6390.  
  6391. Ddd*breakpoint_properties*text.columns:                40
  6392. Ddd*breakpoint_properties*scrollBarDisplayPolicy:      XmAS_NEEDED
  6393.  
  6394. Ddd*breakpoint_properties*helpString:        \
  6395. @rm @bs Breakpoint Properties@rm \n\
  6396. \n\
  6397. @tt \267 @bf Lookup@rm  @tt -@rm  lookup the breakpoint..\n\
  6398. @tt \267 @bf Print@rm  @tt -@rm  print the value of the watched expression..\n\
  6399. @tt \267 @bf Enable@rm  @tt -@rm  enable the breakpoint..\n\
  6400. @tt \267 @bf Disable@rm  @tt -@rm  disable the breakpoint..\n\
  6401. @tt \267 @bf Temp@rm  @tt -@rm  make the breakpoint temporary..\n\
  6402. @tt \267 @bf Delete@rm  @tt -@rm  delete the breakpoint..\n\
  6403. \n\
  6404. @tt \267 @bf Condition@rm  @tt -@rm  specify a breakpoint condition.\n\
  6405.     The breakpoint breaks only if the condition evaluates to non-zero.\n\
  6406. @tt \267 @bf Ignore Count@rm  @tt -@rm  set an ignore count @sl count@rm .\n\
  6407.     The next @sl count@rm  hits of the breakpoint will be ignored.\n\
  6408. @tt \267 @bf Commands@rm  @tt -@rm  record and edit @GDB@ command sequences.\n\
  6409.     These commands will be executed when the breakpoint is hit.\n\
  6410.     To record a command sequence, follow these steps:\n\
  6411.     @tt -@rm  Click on @bf Record@rm  to begin the recording.\n\
  6412.     @tt -@rm  Now interact with DDD.\n\
  6413.        The recorded @GDB@ commands are shown in the @GDB@ console.\n\
  6414.     @tt -@rm  Click on @bf End@rm  to stop the recording.\n\
  6415.     @tt -@rm  Use @bf Edit @small>>@rm  to edit the recorded commands.\n\
  6416. \n\
  6417. Click on @bf Close@rm  to close this window.
  6418.  
  6419.  
  6420.  
  6421. !-----------------------------------------------------------------------------
  6422. ! Define Command
  6423. !-----------------------------------------------------------------------------
  6424.  
  6425. Ddd*define_command_popup.title:            DDD: Define Command
  6426.  
  6427. ! Ddd*define_command.okLabelString:            Close
  6428.  
  6429. Ddd*define_command*name.label.labelString:    Command
  6430. Ddd*define_command*name*text*columns:           30
  6431.  
  6432. Ddd*define_command*commands.labelString:    Definition
  6433. Ddd*define_command*commandsMenu.packing:    XmPACK_COLUMN
  6434. Ddd*define_command*commandsMenu.entryAlignment:    XmALIGNMENT_CENTER
  6435.  
  6436. Ddd*define_command*record.labelString:        \ \ \ Record\ \ \ 
  6437. Ddd*define_command*end.labelString:        End
  6438. Ddd*define_command*edit.labelString:        Edit @small>>
  6439.  
  6440. Ddd*define_command*record.tipString: \
  6441. @rm Record command definition
  6442. Ddd*define_command*record.documentationString: \
  6443. @rm Record command definition
  6444.  
  6445. Ddd*define_command*end.tipString: \
  6446. @rm End recording
  6447. Ddd*define_command*end.documentationString: \
  6448. @rm End command recording
  6449.  
  6450. Ddd*define_command*edit.tipString: \
  6451. @rm Edit command definition
  6452.  
  6453. Ddd*define_command*text.columns:         40
  6454. Ddd*define_command*scrollBarDisplayPolicy:     XmAS_NEEDED
  6455.  
  6456. Ddd*define_command*button.labelString:        Button
  6457. Ddd*define_command*console.labelString:        Console
  6458. Ddd*define_command*source.labelString:        Source
  6459. Ddd*define_command*data.labelString:        Data
  6460.  
  6461. Ddd*define_command*helpString:        \
  6462. @rm @bs Define Command@rm \n\
  6463. \n\
  6464. @tt \267 @bf Command@rm  @tt -@rm  the name of the @GDB@ command being defined.\n\
  6465. @tt \267 @bf Definition@rm  @tt -@rm  record and edit the command definition.\n\
  6466. @tt \267 @bf Buttons@rm  @tt -@rm  assign buttons to this command.\n\
  6467. \n\
  6468. To define a @GDB@ command, follow these steps:\n\
  6469. @tt \267 @rm Enter the command name in the @bf Command@rm  field.\n\
  6470. @tt \267 @rm Click on @bf Record@rm  to begin the recording.\n\
  6471. @tt \267 @rm Now interact with DDD.\n\
  6472.    The recorded @GDB@ commands are shown in the @GDB@ console.\n\
  6473. @tt \267 @rm Click on @bf End@rm  to stop the recording.\n\
  6474. @tt \267 @rm Use @bf Edit @small>>@rm  to edit the command definition.\n\
  6475. @tt \267 @rm Use @bf Buttons@rm  to place the new command on a button.\n\
  6476. \n\
  6477. Click on @bf Apply@rm  to apply the new command.\n\
  6478. Click on @bf OK@rm  to close this window.
  6479.  
  6480.  
  6481. !-----------------------------------------------------------------------------
  6482. ! Show Backtrace
  6483. !-----------------------------------------------------------------------------
  6484.  
  6485. Ddd*stack_dialog_popup.title:          DDD: Backtrace
  6486. Ddd*stack_dialog.listLabelString:      Backtrace
  6487. Ddd*stack_dialog.okLabelString:          Up
  6488. Ddd*stack_dialog.applyLabelString:      Down
  6489. Ddd*stack_dialog.cancelLabelString:      Close
  6490. Ddd*stack_dialog*visibleItemCount:      10
  6491.  
  6492. Ddd*stack_dialog*helpString:      \
  6493. @rm This window shows the current @sl Backtrace@rm .\n\
  6494. \n\
  6495. The backtrace is a summary of how your program got where it is.\n\
  6496. It shows one line per stack frame, for many frames, starting with\n\
  6497. the initial calling function (usually @tt main()@rm ), the function\n\
  6498. called by @tt main()@rm , the function called by this function and\n\
  6499. so on down the stack, down to the currently executing frame.\n\
  6500. \n\
  6501. You can make a specific frame the current one by selecting it\n\
  6502. in this window.  You can also move around by pressing \
  6503. @bf Up@rm  or @bf Down@rm .
  6504.  
  6505.  
  6506. !-----------------------------------------------------------------------------
  6507. ! Registers
  6508. !-----------------------------------------------------------------------------
  6509.  
  6510. Ddd*register_dialog_popup.title:         DDD: Registers
  6511. Ddd*register_dialog.listLabelString:         Registers
  6512. Ddd*register_dialog.okLabelString:         Close
  6513. Ddd*register_dialog.listVisibleItemCount:    12
  6514.  
  6515. Ddd*register_dialog*box.orientation: XmHORIZONTAL
  6516. Ddd*register_dialog*box.marginHeight: 0
  6517. Ddd*register_dialog*box.marginWidth:  0
  6518.  
  6519. Ddd*register_dialog*all_registers.labelString: All registers
  6520. Ddd*register_dialog*int_registers.labelString: Integer registers
  6521.  
  6522. Ddd*register_dialog*helpString:         \
  6523. @rm This window shows the @sl Machine Registers@rm .\n\
  6524. Select any register to have its name copied to the argument @bf ()@rm .\n\
  6525. \n\
  6526. If @bf Integer registers@rm  is set, integer registers are shown.\n\
  6527. If @bf All registers@rm  is set, all registers are shown.
  6528.  
  6529.  
  6530. !-----------------------------------------------------------------------------
  6531. ! Threads
  6532. !-----------------------------------------------------------------------------
  6533.  
  6534. Ddd*thread_dialog_popup.title:                  DDD: Threads
  6535. Ddd*thread_dialog.listLabelString:         Threads
  6536. Ddd*thread_dialog.cancelLabelString:         Close
  6537. Ddd*thread_dialog.okLabelString:         Suspend
  6538. Ddd*thread_dialog.applyLabelString:         Resume
  6539. Ddd*thread_dialog.listVisibleItemCount:      10
  6540.  
  6541. Ddd*thread_dialog*box.orientation:  XmHORIZONTAL
  6542. Ddd*thread_dialog*box.marginHeight: 0
  6543. Ddd*thread_dialog*box.marginWidth:  0
  6544.  
  6545. Ddd*thread_dialog*helpString:         \
  6546. @rm This window shows the current @sl Execution Threads@rm .\n\
  6547. \n\
  6548. The current thread is highlighted.\n\
  6549. All debugging commands show information from the perspective\n\
  6550. of the current thread.\n\
  6551. \n\
  6552. Select any thread to make it the current thread.\n\
  6553. \n\
  6554. In JDB, you can also\n\
  6555. @tt \267 @rm select a threadgroup to switch between viewing all threads\n\
  6556.     and the threads of the selected threadgroup.\n\
  6557. @tt \267 @rm click on @bf Suspend@rm  to suspend execution of the selected threads.\n\
  6558. @tt \267 @rm click on @bf Resume@rm  to resume execution of the selected threads.
  6559.  
  6560.  
  6561. !-----------------------------------------------------------------------------
  6562. ! Command History
  6563. !-----------------------------------------------------------------------------
  6564.  
  6565. Ddd*history_dialog_popup.title:            DDD: Command History
  6566. Ddd*history_dialog.listLabelString:        Command History
  6567. Ddd*history_dialog*visibleItemCount:        10
  6568.  
  6569. Ddd*history_dialog*helpString:        \
  6570. @rm This window shows the @sl Command History@rm .\n\
  6571. \n\
  6572. DDD keeps track of the commands you type during your debugging\n\
  6573. sessions, so that you can be certain of precisely what happened.\n\
  6574. Use this window to manage the DDD command history facility.\n\
  6575. \n\
  6576. Select a specific command to have it copied at the @GDB@ prompt.\n\
  6577. Click on @bf Apply@rm  to execute the current command.
  6578.  
  6579.  
  6580. !-----------------------------------------------------------------------------
  6581. ! Display Editor
  6582. !-----------------------------------------------------------------------------
  6583.  
  6584. Ddd*edit_displays_dialog_popup.title: DDD: Display Editor
  6585. Ddd*edit_displays_dialog*listLabelString: Displays
  6586. Ddd*edit_displays_dialog*buttons.orientation: XmHORIZONTAL
  6587. Ddd*edit_displays_dialog.okLabelString:          Close
  6588.  
  6589. Ddd*edit_displays_dialog.childPlacement:  XmPLACE_TOP
  6590. Ddd*edit_displays_dialog*buttons*labelType:  XmPIXMAP
  6591.  
  6592.  
  6593. Ddd*edit_displays_dialog*helpString:      \
  6594. @bs Display Editor@rm \n\
  6595. \n\
  6596. Columns:\n\
  6597. @tt \267 @bf Num@rm  @tt -@rm  the display number.\n\
  6598. @tt \267 @bf Expression@rm  @tt -@rm  the display expression.\n\
  6599. @tt \267 @bf State@rm  @tt -@rm  the display state (enabled, disabled, alias, or deferred).\n\
  6600. @tt \267 @bf Scope@rm  @tt -@rm  the scope in which the display was created.\n\
  6601. @tt \267 @bf Address@rm  @tt -@rm  the location of the display expression in memory.\n\
  6602. \n\
  6603. Buttons:\n\
  6604. @tt \267 @bf Display...@rm  @tt -@rm  create a new display.\n\
  6605. @tt \267 @bf Disp *@rm  @tt -@rm  dereference the selected display.\n\
  6606. @tt \267 @bf Show@rm  @tt -@rm  show the details of all selected displays.\n\
  6607. @tt \267 @bf Hide@rm  @tt -@rm  hide the details of all selected displays.\n\
  6608. @tt \267 @bf Set@rm  @tt -@rm  change a value in the selected display.\n\
  6609. @tt \267 @bf Undisp@rm  @tt -@rm  delete all selected displays.\n\
  6610. \n\
  6611. Use @key Ctrl@rm +@bs mouse button 1@rm  to toggle selections.
  6612.  
  6613.  
  6614.  
  6615. Ddd*edit_displays_dialog*new.labelString:        New...
  6616. Ddd*edit_displays_dialog*new.labelPixmap:        new_display
  6617. Ddd*edit_displays_dialog*new.labelInsensitivePixmap:    new_display-xx
  6618. Ddd*edit_displays_dialog*new.armPixmap:            new_display-arm
  6619.  
  6620. Ddd*edit_displays_dialog*new.tipString:  \
  6621. @rm Create new display
  6622. Ddd*edit_displays_dialog*new.documentationString:  \
  6623. @rm Create new data display (possibly depending on the selected data display)
  6624.  
  6625. Ddd*edit_displays_dialog*dereference.labelString:   Display *
  6626. Ddd*edit_displays_dialog*dereference.labelPixmap:        dispref
  6627. Ddd*edit_displays_dialog*dereference.labelInsensitivePixmap:    dispref-xx
  6628. Ddd*edit_displays_dialog*dereference.armPixmap:            dispref-arm
  6629.  
  6630. Ddd*edit_displays_dialog*dereference.tipString:  \
  6631. @rm Dereference selected display
  6632. Ddd*edit_displays_dialog*dereference.documentationString: \
  6633. @rm Dereference the selected data display
  6634.  
  6635. Ddd*edit_displays_dialog*show_detail.labelString:   Show Detail
  6636. Ddd*edit_displays_dialog*show_detail.labelPixmap:        show
  6637. Ddd*edit_displays_dialog*show_detail.labelInsensitivePixmap:    show-xx
  6638. Ddd*edit_displays_dialog*show_detail.armPixmap:            show-arm
  6639.  
  6640. Ddd*edit_displays_dialog*show_detail.tipString:  \
  6641. @rm Show selected details
  6642. Ddd*edit_displays_dialog*show_detail.documentationString: \
  6643. @rm Show detail on the selected data displays
  6644.  
  6645. Ddd*edit_displays_dialog*hide_detail.labelString:   Hide Detail
  6646. Ddd*edit_displays_dialog*hide_detail.labelPixmap:        hide
  6647. Ddd*edit_displays_dialog*hide_detail.labelInsensitivePixmap:    hide-xx
  6648. Ddd*edit_displays_dialog*hide_detail.armPixmap:            hide-arm
  6649.  
  6650. Ddd*edit_displays_dialog*hide_detail.tipString:  \
  6651. @rm Hide selected details
  6652. Ddd*edit_displays_dialog*hide_detail.documentationString: \
  6653. @rm Hide detail on the selected data displays
  6654.  
  6655. Ddd*edit_displays_dialog*set.labelString:        Set Value
  6656. Ddd*edit_displays_dialog*set.labelPixmap:        set
  6657. Ddd*edit_displays_dialog*set.labelInsensitivePixmap:    set-xx
  6658. Ddd*edit_displays_dialog*set.armPixmap:            set-arm
  6659.  
  6660. Ddd*edit_displays_dialog*set.tipString:  \
  6661. @rm Set display value
  6662. Ddd*edit_displays_dialog*set.documentationString: \
  6663. @rm Change a value in the selected data display
  6664.  
  6665. Ddd*edit_displays_dialog*delete.labelString:        Undisplay
  6666. Ddd*edit_displays_dialog*delete.labelPixmap:        undisplay
  6667. Ddd*edit_displays_dialog*delete.labelInsensitivePixmap:    undisplay-xx
  6668. Ddd*edit_displays_dialog*delete.armPixmap:        undisplay-arm
  6669.  
  6670. Ddd*edit_displays_dialog*delete.tipString:  \
  6671. @rm Delete selected displays
  6672. Ddd*edit_displays_dialog*delete.documentationString:  \
  6673. @rm Delete the selected data displays
  6674.  
  6675.  
  6676. !-----------------------------------------------------------------------------
  6677. ! New Display
  6678. !-----------------------------------------------------------------------------
  6679.  
  6680.  
  6681. Ddd*new_display_dialog_popup.title:                 DDD: New Display
  6682. Ddd*new_display_dialog.okLabelString:              Display
  6683. Ddd*new_display_dialog*label.labelString:           Display Expression
  6684. Ddd*new_display_dialog*shortcut.labelString:          Include in 
  6685. Ddd*new_display_dialog*display.labelType:          XmPIXMAP
  6686. Ddd*new_display_dialog*display.labelString:          `Display ()'
  6687. Ddd*new_display_dialog*display.labelPixmap:          display
  6688. Ddd*new_display_dialog*menu.labelString:          menu
  6689. Ddd*new_display_dialog*helpString:               @rm Please enter an expression in the argument field.\n\
  6690. The value of the expression is displayed each time the program stops.\n\
  6691. \n\
  6692. Variables accessible are those of the lexical environment of the current\n\
  6693. stack frame, plus all those whose scope is global or an entire file.\n\
  6694. \n\
  6695. If @bf Include in `Display ()' Menu@rm  is set, the new display expression\n\
  6696. becomes an item in the @bf Display ()@rm  menu.
  6697.  
  6698. Ddd*dependent_display_dialog_popup.title:          DDD: New Dependent Display
  6699. Ddd*dependent_display_dialog.okLabelString:        Display
  6700. Ddd*dependent_display_dialog*label.labelString:    Display Expression
  6701. Ddd*dependent_display_dialog*shortcut.labelString: Include in 
  6702. Ddd*dependent_display_dialog*display.labelType:    XmPIXMAP
  6703. Ddd*dependent_display_dialog*display.labelString:  `Display ()'
  6704. Ddd*dependent_display_dialog*display.labelPixmap:  display
  6705. Ddd*dependent_display_dialog*menu.labelString:     menu
  6706. Ddd*dependent_display_dialog*helpString:        @rm Please enter an expression in the argument field.\n\
  6707. The value of the expression is displayed each time the program stops.\n\
  6708. \n\
  6709. Variables accessible are those of the lexical environment of the current\n\
  6710. stack frame, plus all those whose scope is global or an entire file.\n\
  6711. \n\
  6712. If @bf Include in `Display ()' Menu@rm  is set, the new display expression\n\
  6713. becomes an item in the @bf Display ()@rm  menu.\n\
  6714. \n\
  6715. The new display will be made dependent on the currently selected display.
  6716.  
  6717.  
  6718. !-----------------------------------------------------------------------------
  6719. ! Examine Memory
  6720. !-----------------------------------------------------------------------------
  6721.  
  6722. Ddd*examine_dialog_popup.title:    DDD: Examine Memory
  6723.  
  6724. Ddd*examine_dialog*examine.label.labelString:    Examine
  6725. Ddd*examine_dialog*examine*text.columns:    4
  6726. Ddd*examine_dialog*examine*text.maximumValue:    9999
  6727. Ddd*examine_dialog*examine*text.minimumValue:    1
  6728.  
  6729. Ddd*examine_dialog*spinBoxChildType:        XmNUMERIC
  6730. Ddd*examine_dialog*arrowLayout:                XmARROWS_END
  6731. Ddd*examine_dialog*spin.marginWidth:        0
  6732. Ddd*examine_dialog*spin.marginHeight:        0
  6733.  
  6734. Ddd*examine_dialog*o.labelString:    octal
  6735. Ddd*examine_dialog*x.labelString:    hex
  6736. Ddd*examine_dialog*d.labelString:    decimal
  6737. Ddd*examine_dialog*u.labelString:    unsigned
  6738. Ddd*examine_dialog*t.labelString:    binary
  6739. Ddd*examine_dialog*f.labelString:    float
  6740. Ddd*examine_dialog*a.labelString:    address
  6741. Ddd*examine_dialog*i.labelString:    instruction
  6742. Ddd*examine_dialog*c.labelString:    char
  6743. Ddd*examine_dialog*s.labelString:    string
  6744.  
  6745. Ddd*examine_dialog*b.labelString:    bytes
  6746. Ddd*examine_dialog*h.labelString:    halfwords
  6747. Ddd*examine_dialog*w.labelString:    words
  6748. Ddd*examine_dialog*g.labelString:    giants
  6749.  
  6750. Ddd*examine_dialog*address.label.labelString: from
  6751.  
  6752. Ddd*examine_dialog.okLabelString:    Print
  6753. Ddd*examine_dialog.applyLabelString:    Display
  6754. Ddd*examine_dialog.cancelLabelString:    Close
  6755.  
  6756. Ddd*examine_dialog*helpString:    \
  6757. @rm You can examine memory in any of several formats,\n\
  6758. independently of your program's data types.\n\
  6759. \n\
  6760. You can select the number of items to examine, the format,\n\
  6761. and the starting address.\n\
  6762. \n\
  6763. Click on @bf Print@rm  to print the items in the debugger console.\n\
  6764. Click on @bf Display@rm  to display the items in the data window.\n\
  6765. Click on @bf Close@rm  to close this window.
  6766.  
  6767.  
  6768.  
  6769.  
  6770. !-----------------------------------------------------------------------------
  6771. ! Run, make, and CD dialogs
  6772. !-----------------------------------------------------------------------------
  6773.  
  6774. Ddd*run_dialog_popup.title: DDD: Run Program
  6775. Ddd*run_dialog.listLabelString:        Arguments
  6776. Ddd*run_dialog.selectionLabelString:    Run with Arguments
  6777. Ddd*run_dialog.okLabelString:        Run
  6778.  
  6779. Ddd*run_dialog*selectionPolicy:        XmSINGLE_SELECT
  6780.  
  6781. Ddd*run_dialog*helpString:    \
  6782. @rm You can now run the debugged program.\n\
  6783. \n\
  6784. DDD keeps track of the arguments you gave to the debugged program,\n\
  6785. such that you can re-use them at a later time.\n\
  6786. Select specific arguments to have them copied to the argument prompt.\n\
  6787. \n\
  6788. Click on @bf Run@rm  to start the debugged program with the selected arguments.
  6789.  
  6790.  
  6791. Ddd*make_dialog_popup.title: DDD: Make
  6792. Ddd*make_dialog.listLabelString:    Targets
  6793. Ddd*make_dialog.selectionLabelString:    Make Target
  6794. Ddd*make_dialog.okLabelString:        Make
  6795.  
  6796. Ddd*make_dialog*selectionPolicy:    XmSINGLE_SELECT
  6797.  
  6798. Ddd*make_dialog*helpString:    \
  6799. @rm You can now start the make program.\n\
  6800. \n\
  6801. DDD keeps track of the arguments you gave to the make program,\n\
  6802. such that you can re-use them at a later time.\n\
  6803. Select specific arguments to have them copied to the argument prompt.\n\
  6804. \n\
  6805. Click on @bf Make@rm  to start the make program with the selected arguments.
  6806.  
  6807.  
  6808. Ddd*cd_dialog_popup.title: DDD: Change Directory
  6809. Ddd*cd_dialog.listLabelString:    Directories
  6810. Ddd*cd_dialog.selectionLabelString:    Change Directory To
  6811. Ddd*cd_dialog.okLabelString:        Change Dir
  6812.  
  6813. Ddd*cd_dialog*selectionPolicy:    XmSINGLE_SELECT
  6814.  
  6815. Ddd*cd_dialog*helpString:    \
  6816. @rm You can now change the current directory.\n\
  6817. \n\
  6818. DDD keeps track of the directories you gave to the cd command,\n\
  6819. such that you can re-use them at a later time.\n\
  6820. Select specific directories to have them copied to the argument prompt.\n\
  6821. \n\
  6822. Click on @bf Change Dir@rm  to change the current directory.
  6823.  
  6824.  
  6825. !-----------------------------------------------------------------------------
  6826. ! Debugger State
  6827. !-----------------------------------------------------------------------------
  6828.  
  6829. Ddd*gdb_status_dialog_popup.title: DDD: Debugger State
  6830. Ddd*gdb_status_dialog*okLabelString: Close
  6831. Ddd*gdb_status_dialog*cancelLabelString: Update
  6832.  
  6833. Ddd*gdb_status_dialog*helpString: \
  6834. @rm This dialog shows the @GDB@ state and capabilities.\n\
  6835. Click on @bf Update@rm  to update its contents.
  6836.  
  6837.  
  6838. !-----------------------------------------------------------------------------
  6839. ! Other Dialogs
  6840. !-----------------------------------------------------------------------------
  6841.  
  6842. Ddd*busy_dialog_popup.title: DDD: Debugger Busy
  6843. Ddd*busy_dialog.messageString:        \
  6844. @rm @GDB@ is busy!
  6845. Ddd*busy_dialog*helpString:    \
  6846. @rm @GDB@ is busy on some debugger action.\n\
  6847. \n\
  6848. You may wish to wait until the @GDB@ prompt appears,\n\
  6849. or interrupt the current debugging command by selecting\n\
  6850. @bf Program@symbol \256@bf Interrupt@rm  (or typing @key Esc@rm ).\n\
  6851. \n\
  6852. If @GDB@ is busy running your debugged program, interrupting\n\
  6853. @GDB@ means to interrupt program execution, such that you can\n\
  6854. examine the current program state.\n\
  6855. \n\
  6856. If @GDB@ is busy recording commands, simply enter `@tt end@rm' 
  6857. at the @GDB@ prompt.
  6858.  
  6859. Ddd*quit_dialog_popup.title: DDD: Debugger Still Busy
  6860. ! Ddd*quit_dialog.messageString:     \
  6861. ! @rm @GDB@ is still busy.  Exit anyway (and kill it)?
  6862. Ddd*quit_dialog*okLabelString:         Yes
  6863. Ddd*quit_dialog*cancelLabelString:   No
  6864. Ddd*quit_dialog*defaultButtonType:   XmDIALOG_OK_BUTTON
  6865. Ddd*quit_dialog*helpString:    \
  6866. @rm @GDB@ is busy and does not react to the `@tt quit@rm' command.\n\
  6867. The debugged program may be still running.\n\
  6868. \n\
  6869. Before killing a running @GDB@, you should try to interrupt it\n\
  6870. (by selecting @bf Program@symbol \256@bf Interrupt@rm ).
  6871.  
  6872. Ddd*shutdown_dialog_popup.title: DDD: Program Running
  6873. ! Ddd*shutdown_dialog.messageString:     \
  6874. ! @rm The program is running.  Shutdown anyway (and kill it)?
  6875. Ddd*shutdown_dialog*okLabelString:         Yes
  6876. Ddd*shutdown_dialog*cancelLabelString:   No
  6877. Ddd*shutdown_dialog*defaultButtonType:   XmDIALOG_OK_BUTTON
  6878. Ddd*shutdown_dialog*helpString:    \
  6879. @rm Your program is still running.\n\
  6880. \n\
  6881. Shutting down DDD now will kill your program.\n\
  6882. Please confirm that this is what you want.
  6883.  
  6884. Ddd*terminated_dialog_popup.title: DDD: Hasta la Vista
  6885. ! Ddd*terminated_dialog.messageString:   \
  6886. ! @rm @GDB@ terminated abnormally.
  6887. Ddd*terminated_dialog*okLabelString:       Exit
  6888. Ddd*terminated_dialog*cancelLabelString:   Restart
  6889. Ddd*terminated_dialog*helpString:    \
  6890. @rm @GDB@ terminated abnormally.  Without @GDB@, DDD cannot run.\n\
  6891. \n\
  6892. You may wish to examine the final @GDB@ output before exiting\n\
  6893. or restarting DDD.\n\
  6894. \n\
  6895. Click on @bf Exit@rm  to exit DDD.\n\
  6896. Click on @bf Restart@rm  to restart DDD (and @GDB@) from scratch.
  6897.  
  6898. Ddd*exited_dialog_popup.title: DDD: Always Look at the Bright Side of Life
  6899. ! Ddd*exited_dialog.messageString:   \
  6900. ! @rm @GDB@ exited.
  6901. Ddd*exited_dialog*okLabelString:       Exit
  6902. Ddd*exited_dialog*cancelLabelString:   Restart
  6903. Ddd*exited_dialog*helpString:    \
  6904. @rm @GDB@ has exited.  Without @GDB@, DDD cannot run.\n\
  6905. \n\
  6906. You may wish to examine the final @GDB@ output before exiting\n\
  6907. or restarting DDD.\n\
  6908. \n\
  6909. Click on @bf Exit@rm  to exit DDD.\n\
  6910. Click on @bf Restart@rm  to restart DDD (and @GDB@) from scratch.
  6911.  
  6912. Ddd*no_debugger_dialog_popup.title: DDD: Losing my Religion
  6913. ! Ddd*no_debugger_dialog.messageString:   \
  6914. ! @rm @GDB@ could not be started.
  6915. Ddd*no_debugger_dialog*okLabelString:       Exit
  6916. Ddd*no_debugger_dialog*helpString:    \
  6917. @rm @GDB@ could not be started.\n\
  6918. \n\
  6919. DDD needs some inferior debugger to run.\n\
  6920. You may wish to examine the diagnostic messages before exiting DDD.\n\
  6921. \n\
  6922. Here are some hints that may help you out:\n\
  6923. @tt \267 @rm If DDD looked for the wrong inferior debugger, re-invoke DDD,\n\
  6924.     but use one of the `@tt --gdb@rm', `@tt --dbx@rm', `@tt --xdb@rm', \
  6925. `@tt --jdb@rm', or `@tt --pydb@rm' options to specify\n\
  6926.     the inferior debugger.\n\
  6927. @tt \267 @rm If @GDB@ is the correct inferior debugger, \
  6928. but could not be found,\n\
  6929.     re-invoke DDD, but use the `@tt --debugger @sl path@rm @rm' option to \
  6930. specify\n\
  6931.     the full @GDB@ path @sl path@rm .\n\
  6932. @tt \267 @rm If you used the `@tt --debugger @sl path@rm @rm' option, be sure to specify \
  6933. one of\n\
  6934.     the `@tt --gdb@rm', `@tt --dbx@rm', `@tt --xdb@rm', `@tt --jdb@rm',
  6935. or `@tt --pydb@rm' options \
  6936. as well.\n\
  6937. @tt \267 @rm If you started DDD without arguments, re-invoke DDD,\n\
  6938.     but give it an executable as argument.  XDB and some DBX versions\n\
  6939.     require being invoked with an executable.\n\
  6940. @tt \267 @rm DDD passes all unknown options to @GDB@.  If @GDB@ choked on\n\
  6941.     some options intended for DDD, use the DDD `@tt --help@rm' option to\n\
  6942.     get a list of valid DDD options.\n\
  6943. @tt \267 @rm If @GDB@ could not be invoked due to some communication failure,\n\
  6944.     try changing the `@tt .blockTTYInput@rm' resource.\n\
  6945. For details on options and resources, see the DDD manual: select\n\
  6946. @bf Help@symbol \256@bf DDD Reference@rm  \
  6947. or invoke DDD with the `@tt --manual@rm' option.\n\
  6948. \n\
  6949. Click on @bf Exit@rm  to exit DDD.
  6950.  
  6951. Ddd*fatal_dialog_popup.title: DDD: Oops
  6952. Ddd*fatal_dialog.messageString:      \
  6953. @rm Internal error
  6954. Ddd*fatal_dialog*okLabelString:           Exit
  6955. Ddd*fatal_dialog*restart.labelString:  Restart
  6956. Ddd*fatal_dialog*cancelLabelString:    Ignore
  6957. Ddd*fatal_dialog*helpString: \
  6958. @rm Oops!  You have found a bug in DDD.\n\
  6959. You should better save your work immediately; DDD may fail again soon.\n\
  6960. \n\
  6961. If you can reproduce this bug, please send a bug report\n\
  6962. to @tt<ddd-bugs@ ips.cs.tu-bs.de>@rm , giving a subject like\n\
  6963. \n\
  6964.     DDD 3.0 (i686-pc-linux-gnu) gets @CAUSE@\n\
  6965. \n\
  6966. To enable us to fix the bug, you should include the following information:\n\
  6967. @tt \267 @rm What you were doing to get this message.  Report all the facts.\n\
  6968. @tt \267 @rm The contents of the `@tt ~/.ddd/log@rm' file \
  6969. as generated by this session.\n\
  6970. @tt \267 @rm If a core file was generated in your directory, please run\n\
  6971.     `@tt gdb ddd core@rm', and type `@tt where@rm' at the `@tt (gdb)@rm' prompt.\n\
  6972.     (Include this output only.  Do not include the core file itself.)\n\
  6973. Please read also the section ``Reporting Bugs'' in the DDD manual.\n\
  6974. \n\
  6975. We thank you for your support.\n\
  6976. \n\
  6977. Click on @bf Exit@rm  to exit DDD.\n\
  6978. Click on @bf Restart@rm  to restart DDD from scratch.\n\
  6979. Click on @bf Ignore@rm  to resume your DDD session.
  6980.  
  6981.  
  6982. Ddd*yn_dialog_popup.title: DDD: Debugger Question
  6983. Ddd*yn_dialog*okLabelString:       Yes
  6984. Ddd*yn_dialog*cancelLabelString:   No
  6985. Ddd*yn_dialog*defaultButtonType:   XmDIALOG_OK_BUTTON
  6986. Ddd*yn_dialog*helpString:    \
  6987. @bs @GDB@ Question@rm \n\
  6988. \n\
  6989. Click on @bf Yes@rm  or @bf No@rm , or enter `@tt yes@rm' or `@tt no@rm' \
  6990. in the @GDB@ console.\n\
  6991. For more details, consult the @GDB@ documentation.
  6992.  
  6993. Ddd*gdb_message_dialog_popup.title: DDD: Debugger Message
  6994. Ddd*gdb_message_dialog*helpString:    \
  6995. @bs @GDB@ Message@rm \n\
  6996. \n\
  6997. For details on this @GDB@ message, consult the @GDB@ documentation.
  6998.  
  6999. Ddd*gdb_selection_dialog_popup.title: DDD: Selection
  7000. Ddd*gdb_selection_dialog*listLabelString:  Selection
  7001. Ddd*gdb_selection_dialog*helpString:    \
  7002. @bs @GDB@ Selection Menu@rm \n\
  7003. \n\
  7004. Please select an item from the list and click on @bf OK@rm .\n\
  7005. For more details, consult the @GDB@ documentation.
  7006.  
  7007. Ddd*confirm_overwrite_dialog_popup.title: DDD: File Exists
  7008. Ddd*confirm_overwrite_dialog*messageString:      \
  7009. @rm Overwrite existing file?
  7010. Ddd*confirm_overwrite_dialog*okLabelString:      Yes
  7011. Ddd*confirm_overwrite_dialog*cancelLabelString:      No
  7012. Ddd*confirm_overwrite_dialog*defaultButtonType:      XmDIALOG_CANCEL_BUTTON
  7013. Ddd*confirm_overwrite_dialog*helpString:    \
  7014. @rm The file already exists.\n\
  7015. Click on @bf Yes@rm  to overwrite the existing file.
  7016.  
  7017. Ddd*restart_dialog_popup.title: DDD: Restart
  7018. Ddd*restart_dialog.messageString:     \
  7019. @rm DDD startup preferences were modified.\n\
  7020. Restart DDD to see their effect?
  7021. Ddd*restart_dialog*okLabelString:    Yes
  7022. Ddd*restart_dialog*cancelLabelString:   No
  7023. Ddd*restart_dialog*defaultButtonType:   XmDIALOG_OK_BUTTON
  7024. Ddd*restart_dialog*helpString:    \
  7025. @rm You have changed some DDD startup preferences.\n\
  7026. \n\
  7027. To make your changes take effect, you can\n\
  7028. @tt \267 @rm @sl Save Options@rm , affecting all future DDD sessions.\n\
  7029. @tt \267 @rm @sl Restart DDD@rm , affecting the restarted DDD session only.\n\
  7030. \n\
  7031. To see your changes take effect, click on @bf Yes@rm  to restart DDD.\n\
  7032. Otherwise, click on @bf No@rm  and be sure to save your changes\n\
  7033. using @bf Edit@symbol \256@bf Save Options@rm .
  7034.  
  7035. Ddd*set_dialog_popup.title: DDD: Set Value
  7036. Ddd*set_dialog*helpString:    \
  7037. @rm You can now change the value of the variable in @bf ()@rm .\n\
  7038. If you want to keep it unchanged, click on @bf Cancel@rm .
  7039.  
  7040. Ddd*kill_to_save_dialog_popup.title: DDD: Save Session
  7041. Ddd*kill_to_save_dialog.messageString: \
  7042. @rm Kill the program being debugged?
  7043. Ddd*kill_to_save_dialog.okLabelString:     Yes
  7044. Ddd*kill_to_save_dialog.cancelLabelString: No
  7045. Ddd*kill_to_save_dialog*helpString: \
  7046. @rm In order to restore the current memory contents and the\n\
  7047. current execution position, DDD requires a core dump.\n\
  7048. Unfortunately, DDD must kill the program for that.\n\
  7049. \n\
  7050. To kill your program and save memory contents, click on @bf Yes@rm .\n\
  7051. To cancel saving the session, click on @bf No@rm .
  7052.  
  7053. Ddd*confirm_restart_dialog_popup.title: DDD: Restart Session
  7054. Ddd*confirm_restart_dialog.messageString: \
  7055. @rm The program is running.  Restart anyway (and kill it)?
  7056. Ddd*confirm_restart_dialog.okLabelString:     Yes
  7057. Ddd*confirm_restart_dialog.cancelLabelString: No
  7058. Ddd*confirm_restart_dialog*helpString: \
  7059. @bs @GDB@ Message@rm \n\
  7060. \n\
  7061. For details on this @GDB@ message, consult the @GDB@ documentation.
  7062.  
  7063. Ddd*data_not_saved_dialog_popup.title: DDD: Save Session
  7064. Ddd*data_not_saved_dialog.messageString: \
  7065. @rm Without a core dump, the current execution position\n\
  7066. and memory contents will not be saved.  Proceed anyway?
  7067. Ddd*data_not_saved_dialog.okLabelString:     Yes
  7068. Ddd*data_not_saved_dialog.cancelLabelString: No
  7069. Ddd*data_not_saved_dialog*helpString: \
  7070. @rm In order to restore the current execution position and memory contents,\n\
  7071. DDD requires a core dump of the debugged program.\n\
  7072. \n\
  7073. Without a core dump,\n\
  7074. @tt \267 @rm The current execution position and memory contents will be lost.\n\
  7075.     The debugged program must be restarted when restoring the session.\n\
  7076. @tt \267 @rm The current data displays will be deferred.\n\
  7077.     When restoring the session and running the program, they will be created\n\
  7078.     as soon as their current scope is reached.\n\
  7079. \n\
  7080. To save the entire state without a core dump, click on @bf Yes@rm .\n\
  7081. To cancel saving the session, click on @bf No@rm .
  7082.  
  7083. Ddd*lock_dialog_popup.title: DDD: There can be only one
  7084. Ddd*lock_dialog*helpString:    \
  7085. @rm Another DDD is running, sharing state with this DDD instance.\n\
  7086. \n\
  7087. To resume execution of this DDD, click on @bf Continue@rm .\n\
  7088. To kill the other DDD instance, click on @bf Kill@rm .\n\
  7089. Otherwise, click on @bf Exit@rm .
  7090. Ddd*lock_dialog.okLabelString:        Continue
  7091. Ddd*lock_dialog*kill.labelString:    Kill
  7092. Ddd*lock_dialog.cancelLabelString:     Exit
  7093.  
  7094.  
  7095. Ddd*launch_tty_dialog_popup.title: DDD: Starting Execution Window
  7096. Ddd*launch_tty_dialog.messageString:        \
  7097. @rm Starting Execution Window...
  7098.  
  7099.  
  7100. !-----------------------------------------------------------------------------
  7101. ! Messages
  7102. !-----------------------------------------------------------------------------
  7103.  
  7104. ! If we have an old app-defaults file installed, we may see an old
  7105. ! version of this warning.  Gee, app-defaults files are just plain stupid.
  7106. Ddd*bad_version_warning_popup.title: DDD: Version Mismatch
  7107. Ddd*bad_version_warning*helpString:    \
  7108. @rm This DDD version does not match the version of the\n\
  7109. app-defaults file `@tt Ddd@rm' or your `@tt ~/.ddd/init@rm' file.\n\
  7110. \n\
  7111. @tt \267 @rm If the app-defaults file `@tt Ddd@rm' is out of date, DDD may not work as \
  7112. expected.\n\
  7113.     For instance, this message (being specified in an app-defaults file) may \
  7114. be\n\
  7115.     out of date.  Please install a recent app-defaults file, or better yet,\n\
  7116.     remove it: DDD works perfectly without app-defaults file.  Instead, use \
  7117. a\n\
  7118.     personal `@tt ~/.ddd/init@rm' file to customize DDD.\n\
  7119. \n\
  7120. @tt \267 @rm If your personal `@tt ~/.ddd/init@rm' file or some session \
  7121. `@tt init@rm' file is out of date,\n\
  7122.     use @bf Edit@symbol \256@bf Save Options@rm  to update it.
  7123.  
  7124. Ddd*class_error_popup.title: DDD: No Class
  7125. Ddd*class_error*helpString:    \
  7126. @rm The given class could not be loaded.\n\
  7127. Please check the value of the class search path (`@tt use@rm' command).
  7128.  
  7129. Ddd*source_file_error_popup.title: DDD: No Source
  7130. Ddd*source_file_error*helpString:    \
  7131. @rm The given source file could not be loaded.
  7132.  
  7133. Ddd*remote_file_error_popup.title: DDD: No Remote Source
  7134. Ddd*remote_file_error*helpString:    \
  7135. @rm The given source file could not be loaded from the remote host.\n\
  7136. This message is also caused by attempting to load an empty source file.
  7137.  
  7138. Ddd*source_file_from_gdb_warning_popup.title: DDD: Source From Debugger
  7139. Ddd*source_file_from_gdb_warning*helpString:    \
  7140. @rm The given source file could not be loaded directly.\n\
  7141. Instead, the source was obtained from @GDB@ via the `@tt list@rm' command.
  7142.  
  7143. Ddd*source_trunc_error_popup.title: DDD: Source Truncated
  7144. Ddd*source_trunc_error*helpString:    \
  7145. @rm The given source file could not be loaded entirely.
  7146.  
  7147. Ddd*source_empty_warning_popup.title: DDD: Empty Source
  7148. Ddd*source_empty_warning*helpString:    \
  7149. @rm The given source file contains no data.\n\
  7150. This is very unusual for source files.\n\
  7151. Please verify your file name and try again.
  7152.  
  7153. Ddd*source_binary_warning_popup.title: DDD: Binary Source
  7154. Ddd*source_binary_warning*helpString:    \
  7155. @rm The given source file contains NULL characters. \n\
  7156. This is very unusual for source files. \n\
  7157. You probably gave the name of a binary file. \n\
  7158. Please verify the file name and try again.
  7159.  
  7160. Ddd*source_find_error_popup.title: DDD: Not Found
  7161. Ddd*source_find_error*helpString:    \
  7162. @rm The given argument @bf ()@rm  can not be found in the source text.\n\
  7163. \n\
  7164. See @bf Edit@symbol \256@bf Preferences@symbol \256@bf Source@rm  for search settings.
  7165.  
  7166. Ddd*manual_find_error_popup.title: DDD: Not Found
  7167. Ddd*manual_find_error*helpString:    \
  7168. @rm The given argument @bf ()@rm  can not be found in the on-line manual.
  7169.  
  7170. Ddd*no_source_error_popup.title: DDD: No Source
  7171. Ddd*no_source_error*helpString:    \
  7172. @rm There is no current source text in which to search.
  7173.  
  7174. Ddd*no_source_edit_error_popup.title: DDD: No Source
  7175. Ddd*no_source_edit_error*helpString:    \
  7176. @rm There is no current source text to edit.
  7177.  
  7178. Ddd*no_such_line_error_popup.title: DDD: No such line
  7179. Ddd*no_such_line_error*helpString:    \
  7180. @rm There is no such line in the current source text.
  7181.  
  7182. Ddd*no_such_breakpoint_error_popup.title: DDD: No Such Breakpoint
  7183. Ddd*no_such_breakpoint_error*helpString:    \
  7184. @rm There is no such breakpoint in the current program.
  7185.  
  7186. Ddd*no_completion_error_popup.title: DDD: No Completion
  7187. Ddd*no_completion_error*helpString:    \
  7188. @rm @GDB@ does not support command and argument completion.\n\
  7189. \n\
  7190. Command completion requires the GDB `@tt complete@rm' command,\n\
  7191. which is present in GDB 4.13 and later.
  7192.  
  7193. Ddd*no_program_popup.title: DDD: No Program
  7194. Ddd*no_program*helpString: \
  7195. @rm You have not opened any program yet.  @GDB@ needs a debuggee\n\
  7196. to access core dumps, source files, or attaching to processes.\n\
  7197. \n\
  7198. You can ignore this warning and proceed, but @GDB@ may be unable\n\
  7199. to display symbolic values and determine locations.\n\
  7200. \n\
  7201. To open a program, use @bf File@symbol \256@bf Open Program@rm .
  7202.  
  7203.  
  7204. Ddd*print_empty_graph_error_popup.title: DDD: Nothing to Print
  7205. Ddd*print_empty_graph_error*helpString:    \
  7206. @rm There is nothing to print.\n\
  7207. The printing has been cancelled.
  7208.  
  7209. Ddd*print_failed_error_popup.title: DDD: Printing Failed
  7210. Ddd*print_failed_error*helpString:    \
  7211. @rm The file holding the graph picture could not be written.\n\
  7212. The printing has been cancelled.
  7213.  
  7214. Ddd*tty_exec_error_popup.title: DDD: No Execution Window
  7215. Ddd*tty_exec_error*helpString:    \
  7216. @rm The terminal emulator for the execution window\n\
  7217. could not be invoked.  The debugged process will execute in the\n\
  7218. @GDB@ console instead.\n\
  7219. \n\
  7220. Please verify the contents of the\n\
  7221. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Helpers@symbol \256@bf Execution Window@rm \n\
  7222. setting and make sure that the given\n\
  7223. terminal program is within your executable path.
  7224.  
  7225. Ddd*tty_command_error_popup.title: DDD: TTY Failed
  7226. Ddd*tty_command_error*helpString:    \
  7227. @rm DDD sent a `@tt tty@rm' command to @GDB@ in order to redirect\n\
  7228. input/output of the debugged process to the execution window.\n\
  7229. This command failed.\n\
  7230. \n\
  7231. DDD will now redirect the process I/O explicitly.  This means that\n\
  7232. the command window remains the controlling terminal.\n\
  7233. \n\
  7234. You can tell DDD to not use the `@tt tty@rm' command, but to use explicit\n\
  7235. redirection instead, using shell redirection operators.\n\
  7236. To do so, include a line\n\
  7237. \n\
  7238. @tt Ddd*useTTYCommand: off@rm \n\
  7239. \n\
  7240. in your `@tt ~/.ddd/init@rm' file and restart DDD.
  7241.  
  7242. Ddd*tty_type_error_popup.title: DDD: Term Failed
  7243. Ddd*tty_type_error*helpString:    \
  7244. @rm DDD could not set the TERM environment variable\n\
  7245. to the type of the execution window.  This means that\n\
  7246. your program will execute with a terminal type\n\
  7247. set to `@tt dumb@rm' instead of `@tt xterm@rm'.
  7248.  
  7249. Ddd*history_save_error_popup.title: DDD: Save History Failed
  7250. Ddd*history_save_error*helpString:    \
  7251. @rm The command history could not be saved.
  7252.  
  7253. Ddd*options_save_error_popup.title: DDD: Save Options Failed
  7254. Ddd*options_save_error*helpString:    \
  7255. @rm The DDD options could not be saved.
  7256.  
  7257.  
  7258. Ddd*no_license_error_popup.title: DDD: No License
  7259. Ddd*no_license_error*helpString:    \
  7260. @rm The DDD license could not be uncompressed.\n\
  7261. \n\
  7262. Please verify the contents of the\n\
  7263. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Helpers@symbol \256@bf Uncompress@rm \n\
  7264. setting and make sure that the given\n\
  7265. uncompressing program is within your executable path.
  7266.  
  7267. Ddd*no_news_error_popup.title: DDD: No news is good news
  7268. Ddd*no_news_error*helpString:    \
  7269. @rm The DDD news could not be uncompressed.\n\
  7270. \n\
  7271. Please verify the contents of the\n\
  7272. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Helpers@symbol \256@bf Uncompress@rm \n\
  7273. setting and make sure that the given\n\
  7274. uncompressing program is within your executable path.
  7275.  
  7276. Ddd*no_ddd_manual_error_popup.title: DDD: No Manual
  7277. Ddd*no_ddd_manual_error*helpString:    \
  7278. @rm The DDD manual could not be uncompressed.\n\
  7279. \n\
  7280. Please verify the contents of the\n\
  7281. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Helpers@symbol \256@bf Uncompress@rm \n\
  7282. setting and make sure that the given\n\
  7283. uncompressing program is within your executable path.
  7284.  
  7285. Ddd*no_ddd_man_page_error_popup.title: DDD: No Manual
  7286. Ddd*no_ddd_man_page_error*helpString:    \
  7287. @rm It seems the DDD manual page is not installed.
  7288.  
  7289. Ddd*startup_warning_popup.title: DDD: New Startup Required
  7290. Ddd*startup_warning*helpString: \
  7291. @rm This setting cannot be changed while DDD is running.\n\
  7292. Please save options and restart DDD to see the effects.
  7293.  
  7294. Ddd*print_warning_popup.title: DDD: Print Command Message
  7295. Ddd*print_warning*helpString:    \
  7296. @rm This is a message of your printing command.\n\
  7297. For more details, consult your system documentation.
  7298.  
  7299. Ddd*font_selector_warning_popup.title: DDD: Font Selector Message
  7300. Ddd*font_selector_warning*helpString:    \
  7301. @rm This is a message of the font selection program.\n\
  7302. For more details, consult your system documentation.
  7303.  
  7304. Ddd*edit_warning_popup.title: DDD: Editor Message
  7305. Ddd*edit_warning*helpString:    \
  7306. @rm This is a message of your editor command.\n\
  7307. For more details, consult your system documentation.
  7308.  
  7309. Ddd*grab_warning_popup.title: DDD: Pointer Frozen
  7310. Ddd*grab_warning*helpString: \
  7311. @rm DDD has detected a frozen (grabbed) mouse pointer.\n\
  7312. \n\
  7313. This may be because @GDB@ has interrupted the debuggee\n\
  7314. while it was grabbing the mouse pointer.\n\
  7315. If DDD remains in this state, further interaction will\n\
  7316. probably be impossible.
  7317.  
  7318. Ddd*no_display_number_warning_popup.title: DDD: No Display Number
  7319. Ddd*no_display_number_warning*helpString: \
  7320. @rm DDD could not determine the number of the new display\n\
  7321. as assigned by @GDB@.  DDD will use a default number instead.
  7322.  
  7323. Ddd*invalid_range_error_popup.title: DDD: Invalid Range
  7324. Ddd*invalid_range_error*helpString: \
  7325. @rm The displays to be created have an invalid range @sl x@rm ..@sl y@rm .\n\
  7326. The range must be where @sl x@rm ..@sl y@rm  with @sl x@rm  < @sl y@rm .\n\
  7327. Please verify the range and try again.
  7328.  
  7329. Ddd*expired_warning_popup.title: DDD: DDD Expired
  7330. Ddd*expired_warning*helpString: \
  7331. @rm DDD 3.0 has been superseded by a newer DDD version.\n\
  7332. DDD 3.0 should no longer be used.\n\
  7333. To get the most recent DDD version, see the @bf Help@symbol \256@bf DDD WWW Page@rm .
  7334.  
  7335. Ddd*core_missing_warning_popup.title: DDD: Core Missing
  7336. Ddd*core_missing_warning*helpString: \
  7337. @rm DDD could not get a core dump of the debugged program.\n\
  7338. This means that the current memory contents and execution position\n\
  7339. will be lost when restoring the session.\n\
  7340. \n\
  7341. Please verify the settings in\n\
  7342. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Helpers@symbol \256@bf Get Core File@rm ;\n\
  7343. try again without helper if appropriate.\n\
  7344. \n\
  7345. Also be sure that you have not disabled core dumps\n\
  7346. (hint: look for `@tt limit@rm' and `@tt ulimit@rm' commands \
  7347. in your shell startup file)
  7348.  
  7349. Ddd*program_name_missing_warning_popup.title: DDD: Program Name Missing
  7350. Ddd*program_name_missing_warning*helpString: \
  7351. @rm DDD could not determine the name of the current debuggee.\n\
  7352. Please try again when @GDB@ is ready.
  7353.  
  7354. Ddd*breakpoint_missing_warning_popup.title: DDD: Breakpoints Missing
  7355. Ddd*breakpoint_missing_warning*helpString: \
  7356. @rm DDD could not save the current breakpoint state.\n\
  7357. Please try again when @GDB@ is ready.
  7358.  
  7359. Ddd*displays_missing_warning_popup.title: DDD: Data Displays Missing
  7360. Ddd*displays_missing_warning*helpString: \
  7361. @rm DDD could not save the entire data display state.\n\
  7362. Please try again when @GDB@ is ready.
  7363.  
  7364. Ddd*no_sessions_error_popup.title: DDD: No Sessions
  7365. Ddd*no_sessions_error*helpString: \
  7366. @rm DDD could not access the session repository.
  7367.  
  7368. Ddd*delete_session_error_popup.title: DDD: Delete Session Failed
  7369. Ddd*delete_session_error*helpString: \
  7370. @rm DDD could not entirely remove the session directory from the repository.
  7371.  
  7372. Ddd*too_many_shortcuts_warning_popup.title: DDD: Too many Shortcuts
  7373. Ddd*too_many_shortcuts_warning*helpString:    \
  7374. @rm DDD has not enough room for all display shortcuts and will\n\
  7375. only display the most recently created shortcuts.\n\
  7376. To edit the list of display shortcuts, use @bf Display@symbol \256@bf Edit Menu@rm .
  7377.  
  7378. Ddd*gdb_io_error_popup.title: DDD: I/O Error
  7379. Ddd*gdb_io_error*helpString: \
  7380. @rm The communication between @GDB@ and DDD does not work correctly.\n\
  7381. This is probably due to a bad DDD configuration.\n\
  7382. \n\
  7383. DDD cannot work around this problem, so you may not be able to continue.
  7384.  
  7385. Ddd*gdb_io_warning_popup.title: DDD: I/O Warning
  7386. Ddd*gdb_io_warning*helpString: \
  7387. @rm The communication between @GDB@ and DDD does not work correctly.\n\
  7388. This is probably due to a bad DDD configuration.\n\
  7389. \n\
  7390. DDD can work around this problem, so you may continue working.
  7391.  
  7392. Ddd*out_of_glyphs_warning_popup.title: DDD: Out of Glyphs
  7393. Ddd*out_of_glyphs_warning*helpString: \
  7394. @rm DDD can only display a limited amount of breakpoint symbols at one time.\n\
  7395. The other breakpoints are still maintained, but not visible right now.\n\
  7396. \n\
  7397. To increase the maximum number @sl N@rm  of displayed breakpoint symbols, \
  7398. include a line\n\
  7399. \n\
  7400. @tt Ddd*maxGlyphs: @sl N@rm @rm \n\
  7401. \n\
  7402. in your `@tt ~/.ddd/init@rm' file and restart DDD.
  7403.  
  7404.  
  7405. !-----------------------------------------------------------------------------
  7406. ! Hints on specific DDD states (`What now')
  7407. !-----------------------------------------------------------------------------
  7408.  
  7409. Ddd*no_program.helpString: \
  7410. @rm You have not opened any program yet.  @GDB@ needs a debuggee\n\
  7411. to access core dumps, source files, or attaching to processes.\n\
  7412. \n\
  7413. To open a program, use @bf File@symbol \256@bf Open Program@rm .
  7414.  
  7415.  
  7416. Ddd*no_source_and_no_code.helpString: \
  7417. @rm @GDB@ cannot find the source code of your program.\n\
  7418. \n\
  7419. Here are some hints that may help you out:\n\
  7420. @tt \267 @rm In order to debug a program effectively, you need to generate\n\
  7421.     debugging information when you compile it.  Without debugging \
  7422. information,\n\
  7423.     @GDB@ will be unable to locate the source code.  To request debugging\n\
  7424.     information, specify the `@tt -g@rm' option when you run the compiler.\n\
  7425. @tt \267 @rm You may need to tell @GDB@ where the source code files are.\n\
  7426.     Invoke @bf Edit@symbol \256@bf @GDB@ Settings@rm  and look for appropriate entries.\n\
  7427. @tt \267 @rm Using GDB, you can continue at machine code level \
  7428. by enabling the\n\
  7429.     Machine Code Window.  Use @bf Source@symbol \256@bf Display Machine Code@rm .
  7430.  
  7431. Ddd*recording.helpString: \
  7432. @rm @GDB@ is recording commands.\n\
  7433. \n\
  7434. While recording, commands are not executed; instead, \
  7435. @GDB@ @sl records@rm  them\n\
  7436. for execution when a breakpoint is reached or for user-defined commands.\n\
  7437. \n\
  7438. @tt \267 @rm To end the recording, click on @bf End@rm  \
  7439. or enter `@tt end@rm' at the @GDB@ prompt.\n\
  7440. @tt \267 @rm To cancel the recording, select @bf Program@symbol \256@bf Interrupt@rm  \
  7441. or press @key Esc@rm .
  7442.  
  7443. Ddd*program_not_running.helpString: \
  7444. @rm Your program is not running.\n\
  7445. \n\
  7446. You may now choose between the following:\n\
  7447. @tt \267 @rm Start the program, using @bf Program@symbol \256@bf Run@rm . \
  7448. You may wish to \n\
  7449.     set some breakpoints beforehand, using @bf Break at ()@rm  and \n\
  7450.     @bf Source@symbol \256@bf Edit Breakpoints@rm .\n\
  7451.     To find specific functions, use @bf Lookup ()@rm .\n\
  7452. @tt \267 @rm If your program is already running outside of DDD, you can\n\
  7453.     attach to its running process, using @bf File@symbol \256@bf Attach to Process@rm .\n\
  7454. @tt \267 @rm If some previous invocation of your program has failed, and\n\
  7455.     you want to know why, use @bf File@symbol \256@bf Open Core Dump@rm  to open\n\
  7456.     its core dump.
  7457.  
  7458. Ddd*item_selected.helpString: \
  7459. @rm You have selected some item from the program source code.\n\
  7460. \n\
  7461. @tt \267 @rm To look up further occurences in the source code, use @charset Find@small<< @charset()@rm \n\
  7462.     and @charset Find@small>> @charset()@rm .  \
  7463. @bf Lookup ()@rm  leads you to the item's definition.\n\
  7464. @tt \267 @rm To display the value, use @bf Print ()@rm  (for simple values)\n\
  7465.     and @bf Display ()@rm  (for complex values and dynamic displays).
  7466.  
  7467. Ddd*display_selected.helpString: \
  7468. @rm You have selected some data display.\n\
  7469. \n\
  7470. @tt \267 @rm To examine further members of this data structure, use \
  7471. @bf New Display ()@rm \n\
  7472.     and @bf Display *()@rm .\n\
  7473. @tt \267 @rm To modify the appearance of the selected display, use \
  7474. @bf Hide ()@rm  and @bf Rotate ()@rm .\n\
  7475. @tt \267 @rm To change the value of the selected display, use @bf Set ()@rm .\n\
  7476. @tt \267 @rm To delete the selected displays, use @bf Delete ()@rm .\n\
  7477. @tt \267 @rm Use @bf Data@symbol \256@bf Edit Displays@rm  for further editing.
  7478.  
  7479. Ddd*command_entered.helpString: \
  7480. @rm You have entered some command at the @GDB@ prompt.\n\
  7481. \n\
  7482. @tt \267 @rm To execute the current command, press @key RETURN @symbol \277@rm .\n\
  7483. @tt \267 @rm To complete the current word, use @key TAB@rm .\n\
  7484. @tt \267 @rm To move through the command history, use @key Up@rm  and @key Down@rm .\n\
  7485. @tt \267 @rm To clear the current line, use @key Ctrl+U@rm .\n\
  7486. @tt \267 @rm For further options, see the @bf Commands@rm  menu.
  7487.  
  7488. Ddd*code_but_no_source.helpString: \
  7489. @rm Your program @PROGRAM_STATE@,\n\
  7490. and there is no source code for the current execution position.\n\
  7491. \n\
  7492. Here are some hints that may help you out:\n\
  7493. @tt \267 @rm Use @bf Status@symbol \256@bf Up@rm  to step out of libraries \
  7494. and to enter your own functions.\n\
  7495. @tt \267 @rm In order to debug a program effectively, you need to generate\n\
  7496.     debugging information when you compile it.  Without debugging \
  7497. information,\n\
  7498.     @GDB@ will be unable to locate the source code.  To request debugging\n\
  7499.     information, specify the `@tt -g@rm' option when you run the compiler.\n\
  7500. @tt \267 @rm You may need to tell @GDB@ where the source code files are.\n\
  7501.     Invoke @bf Edit@symbol \256@bf @GDB@ Settings@rm  and look for appropriate entries.\n\
  7502. @tt \267 @rm Using GDB, you can continue at machine code level \
  7503. by enabling the\n\
  7504.     Machine Code Window.  Use @bf Source@symbol \256@bf Display Machine Code@rm .
  7505.  
  7506.  
  7507. Ddd*stopped_at_passed_signal.helpString: \
  7508. @rm Your program @PROGRAM_STATE@.\n\
  7509. \n\
  7510. @tt \267 @rm To find out how you got here, use @bf Status@symbol \256@bf Backtrace@rm .\n\
  7511. @tt \267 @rm To examine a variable value, select it first (click on an \
  7512. occurrence).\n\
  7513.     Then use @bf Print ()@rm  (for simple values) and @bf Display ()@rm  \
  7514. (for complex\n\
  7515.     values).  As a shortcut, you may also press @bs mouse button 3@rm \n\
  7516.     to get a popup menu.\n\
  7517. @tt \267 @rm You can display all local variables at once using \
  7518. @bf Data@symbol \256@bf Display Local Variables@rm .\n\
  7519. @tt \267 @rm To set and clear further breakpoints, use \
  7520. @bf Source@symbol \256@bf Edit Breakpoints@rm .\n\
  7521.     As a shortcut, you may also press @bs mouse button 3@rm  on a\n\
  7522.     location or breakpoint to get a popup menu.\n\
  7523. \n\
  7524. When resuming execution, the @SIGNAL_DESCRIPTION@ signal\n\
  7525. will be passed to the program.\n\
  7526. @tt \267 @rm To continue execution without giving a @SIGNAL@ signal,\n\
  7527.     use @bf Commands@symbol \256@bf Continue Without Signal@rm .\n\
  7528. @tt \267 @rm To see or change the current signal handling, use @bf Status@symbol \256@bf Signals@rm .
  7529.  
  7530. Ddd*stopped_at_ignored_signal.helpString: \
  7531. @rm Your program @PROGRAM_STATE@.\n\
  7532. \n\
  7533. @tt \267 @rm To find out how you got here, use @bf Status@symbol \256@bf Backtrace@rm .\n\
  7534. @tt \267 @rm To examine a variable value, select it first (click on an \
  7535. occurrence).\n\
  7536.     Then use @bf Print ()@rm  (for simple values) and @bf Display ()@rm  \
  7537. (for complex\n\
  7538.     values).  As a shortcut, you may also press @bs mouse button 3@rm \n\
  7539.     to get a popup menu.\n\
  7540. @tt \267 @rm You can display all local variables at once using \
  7541. @bf Data@symbol \256@bf Display Local Variables@rm .\n\
  7542. @tt \267 @rm To set and clear further breakpoints, use \
  7543. @bf Source@symbol \256@bf Edit Breakpoints@rm .\n\
  7544.     As a shortcut, you may also press @bs mouse button 3@rm  on a\n\
  7545.     location or breakpoint to get a popup menu.\n\
  7546. \n\
  7547. When resuming execution, the @SIGNAL_DESCRIPTION@ signal \
  7548. will @sl not@rm  be passed to the program.\n\
  7549. @tt \267 @rm To pass this signal to the program, \
  7550. use the @GDB@ command `@tt signal @SIGNAL@@rm'.\n\
  7551. @tt \267 @rm To see or change the current signal handling, use @bf Status@symbol \256@bf Signals@rm .
  7552.  
  7553. Ddd*stopped.helpString: \
  7554. @rm Your program @PROGRAM_STATE@.\n\
  7555. \n\
  7556. @tt \267 @rm To find out how you got here, use @bf Status@symbol \256@bf Backtrace@rm .\n\
  7557. @tt \267 @rm To examine a variable value, select it first (click on an \
  7558. occurrence).\n\
  7559.     Then use @bf Print ()@rm  (for simple values) and @bf Display ()@rm  \
  7560. (for complex\n\
  7561.     values).  As a shortcut, you may also press @bs mouse button 3@rm \n\
  7562.     to get a popup menu.\n\
  7563. @tt \267 @rm You can display all local variables at once using \
  7564. @bf Data@symbol \256@bf Display Local Variables@rm .\n\
  7565. @tt \267 @rm To set and clear further breakpoints, use \
  7566. @bf Source@symbol \256@bf Edit Breakpoints@rm .\n\
  7567.     As a shortcut, you may also press @bs mouse button 3@rm  on a\n\
  7568.     location or breakpoint to get a popup menu.\n\
  7569. @tt \267 @rm Use the functions of the @bf Program@rm  menu to resume execution\n\
  7570.     and step through your program.
  7571.  
  7572.  
  7573. !-----------------------------------------------------------------------------
  7574. ! Startup tips
  7575. !-----------------------------------------------------------------------------
  7576.  
  7577. Ddd*tip_dialog_popup.title:         DDD Tip of the Day
  7578. Ddd*tip_dialog*helpString:    \
  7579. @rm This is the DDD tip of the day.
  7580. Ddd*tip_dialog.cancelLabelString:    Prev Tip
  7581. Ddd*tip_dialog.helpLabelString:        Next Tip
  7582. Ddd*tip_dialog.symbolPixmap:         ddd
  7583.  
  7584. ! Initial tip (number 0) - shown after wrap-around.
  7585.  
  7586. Ddd*tip0: \
  7587. @rm If you have any more DDD tips of the day,\n\
  7588. please send them to the DDD developers @tt<ddd@ ips.cs.tu-bs.de>@rm .
  7589.  
  7590.  
  7591. ! First tips.
  7592.  
  7593. Ddd*tip1: \
  7594. @rm Welcome to DDD!\n\
  7595. You can get help on all items by pointing at them and pressing F1.\n\
  7596. And don't worry, there is the @bf Help@rm  menu with much more information...
  7597.  
  7598. Ddd*tip2: \
  7599. @rm Whenever you're stuck, try @bf Help@symbol \256@bf What Now@rm .  This will analyze the\n\
  7600. current DDD state and give you some hints on what to do next.
  7601.  
  7602. Ddd*tip3: \
  7603. @rm Buttons with a small triangle in the upper right corner are special:\n\
  7604. pressing and holding @bs mouse button 1@rm  on them will pop up a menu \n\
  7605. with additional options.
  7606.  
  7607. Ddd*tip4: \
  7608. @rm You can interrupt @GDB@ and the current program by clicking on\n\
  7609. @bf Program@symbol \256@bf Interrupt@rm  or pressing @key Esc@rm .
  7610.  
  7611. Ddd*tip5: \
  7612. @rm There are three ways to show the value of a variable:\n\
  7613. @tt \267 @rm You can view its value, simply by pointing at it;\n\
  7614. @tt \267 @rm You can print its value in the debugger console, using @bf Print ()@rm ;\n\
  7615. @tt \267 @rm You can display it graphically, using @bf Display ()@rm .
  7616.  
  7617. Ddd*tip6: \
  7618. @rm A quick way to manipulate variables, breakpoints, and displays\n\
  7619. is to press @bs mouse button 3@rm  on them.
  7620.  
  7621. Ddd*tip7: \
  7622. @rm Double-clicking on any value in the data display \n\
  7623. will toggle more details.
  7624.  
  7625. Ddd*tip8: \
  7626. @rm If your program needs special terminal capabilities, \n\
  7627. let it run in the separate execution window\n\
  7628. (@bf Program@symbol \256@bf Run in Execution Window@rm ).
  7629.  
  7630.  
  7631. ! Intermediate tips.
  7632.  
  7633. Ddd*tip9: \
  7634. @rm If you want to customize the DDD fonts, see\n\
  7635. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Fonts@rm .
  7636.  
  7637. Ddd*tip10: \
  7638. @rm To change the text background color, write into `@tt ~/.ddd/init@rm':\n\
  7639. @tt Ddd*XmText.background:      @rm  @sl color@rm \n\
  7640. @tt Ddd*XmTextField.background: @rm  @sl color@rm \n\
  7641. @tt Ddd*XmList.background:      @rm  @sl color@rm 
  7642.  
  7643. Ddd*tip11: \
  7644. @rm When using GDB, all text fields have command and argument completion\n\
  7645. with @key Tab@rm , just like the shell.  In a file selection box, type part of\n\
  7646. a filename, hit @key Tab@rm , and voila!  It's completed.
  7647.  
  7648. Ddd*tip12: \
  7649. @rm You can always recenter the command tool\n\
  7650. by selecting @bf View@symbol \256@bf Command Tool@rm ,\n\
  7651. or by pressing @key Alt+8@rm .
  7652.  
  7653. Ddd*tip13: \
  7654. @rm To scroll the data display, most users find a @sl panner@rm \n\
  7655. much more convenient than two scrollbars.\n\
  7656. Check out @bf Edit@symbol \256@bf Preferences@symbol \256@bf Startup@symbol \256@bf Data Scrolling@rm .
  7657.  
  7658. Ddd*tip14: \
  7659. @rm To limit the number of array elements in a data display, set\n\
  7660. @bf Edit@symbol \256@bf GDB Settings@symbol \256@bf Limit on array elements to print@rm .
  7661.  
  7662. Ddd*tip15: \
  7663. @rm If DDD cannot find a source, set the @GDB@ source path\n\
  7664. via @bf Edit@symbol \256@bf @GDB@ Settings@rm .
  7665.  
  7666. Ddd*tip16: \
  7667. @rm To enable source line numbers, set the source indentation\n\
  7668. (@bf Edit@symbol \256@bf Preferences@symbol \256@bf Source@symbol \256@bf Source Indentation@rm )\n\
  7669. to @bf 5@rm  or more.
  7670.  
  7671. Ddd*tip17: \
  7672. @rm You can quickly set breakpoints\n\
  7673. by double-clicking in the breakpoint area.
  7674.  
  7675. Ddd*tip18: \
  7676. @rm To see the @sl actual@rm  type of a C++ object in GDB, set\n\
  7677. @bf Edit@symbol \256@bf GDB Settings@symbol \256@bf Set printing of object's derived type@rm .
  7678.  
  7679. Ddd*tip19: \
  7680. @rm To display @sl data@rm  in hexadecimal format, display it and choose\n\
  7681. @bf Convert to Hex@rm  from the @bf Display ()@rm  menu, \n\
  7682. or enter `@tt graph display /x @sl data@rm @rm' at the GDB prompt.
  7683.  
  7684. Ddd*tip20: \
  7685. @rm To send a signal to your program,\n\
  7686. use @bf Status@symbol \256@bf Signals@symbol \256@bf Send@rm .
  7687.  
  7688. Ddd*tip21: \
  7689. @rm To quickly display variable values,\n\
  7690. double-click on the variable name.
  7691.  
  7692. Ddd*tip22: \
  7693. @rm After looking up an item or stepping through the program, you can use\n\
  7694. @bf Source@symbol \256@bf Back@rm  and @bf Source@symbol \256@bf Forward@rm  to return to earlier locations.
  7695.  
  7696. Ddd*tip23: \
  7697. @rm You can repeat the last command by hitting @key RETURN @symbol \277@rm .\n\
  7698. Use @key Ctrl+B@rm  and @key Ctrl+F@rm  to search the command history.
  7699.  
  7700. Ddd*tip24: \
  7701. @rm You can move breakpoints by dragging them.  \n\
  7702. Just press and hold @bs mouse button 1@rm  on a breakpoint,\n\
  7703. move it to the new position and release @bs mouse button 1@rm  again.
  7704.  
  7705. Ddd*tip25: \
  7706. @rm To make your program ignore signals, use @bf Status@symbol \256@bf Signals@rm  and\n\
  7707. unset the @bf Pass@rm  button for the appropriate signal.
  7708.  
  7709. Ddd*tip26: \
  7710. @rm You can save space by disabling toolbar captions.\n\
  7711. See @bf Edit@symbol \256@bf Preferences@symbol \256@bf Startup@symbol \256@bf Toolbar Appearance@rm .
  7712.  
  7713. Ddd*tip27: \
  7714. @rm To quickly edit breakpoint properties, \n\
  7715. double-click on a breakpoint symbol.
  7716.  
  7717. Ddd*tip28: \
  7718. @rm To have GDB start your program automatically upon startup,\n\
  7719. put the following lines in your `@tt .gdbinit@rm' file:\n\
  7720. @tt break main@rm       - or some other initial function\n\
  7721. @tt run       @rm       - possibly giving arguments here
  7722.  
  7723.  
  7724. ! Advanced tips.
  7725.  
  7726. Ddd*tip29: \
  7727. @rm To get rid of these tips of the day, unset\n\
  7728. @bf Edit@symbol \256@bf Preferences@symbol \256@bf Startup@symbol \256@bf Show Tip of the Day@rm .
  7729.  
  7730. Ddd*tip30: \
  7731. @rm To display the first @sl n@rm  elements of a variable-length array @sl ptr@rm ,\n\
  7732. enter `@tt graph display @sl ptr@rm \1330\135@ @sl n@rm @rm' at the GDB prompt.
  7733.  
  7734. Ddd*tip31: \
  7735. @rm You can have each of DDD, @GDB@ and the debugged program run on\n\
  7736. different machines.  See the DDD `@tt --rhost@rm' option for details.
  7737.  
  7738. Ddd*tip32: \
  7739. @rm You can copy breakpoints by dragging them while pressing @key Shift@rm .\n\
  7740. Just press and hold @key Shift@rm +@bs mouse button 1@rm  on a breakpoint,\n\
  7741. move it to the new position and release @bs mouse button 1@rm  again.
  7742.  
  7743. Ddd*tip33: \
  7744. @rm To save and restore data displays, cut, copy and paste them via\n\
  7745. the @bf Edit@rm  menu.  Together with @tt xclipboard@rm , you can manage\n\
  7746. arbitrary collections of data displays.
  7747.  
  7748. Ddd*tip34: \
  7749. @rm Do you want to stop this debugging session and resume later?\n\
  7750. Use @bf File@symbol \256@bf Save Session@rm !
  7751.  
  7752. Ddd*tip35: \
  7753. @rm To debug a child process, put a call to `@tt sleep@rm' in the child right\n\
  7754. after the `@tt fork@rm' call.  Run the program and attach to the child process\n\
  7755. using @bf File@symbol \256@bf Attach to Process@rm .
  7756.  
  7757. Ddd*tip36: \
  7758. @rm Using GDB, you can define your own canned sequences of commands.\n\
  7759. Try @bf Commands@symbol \256@bf Define Command@rm .
  7760.  
  7761. Ddd*tip37: \
  7762. @rm To use GDB with Sun CC, compile with `@tt -xs@rm'.\n\
  7763. GDB wants debugging info in the executable.
  7764.  
  7765. Ddd*tip38: \
  7766. @rm Disabled breakpoints can be used as bookmarks.\n\
  7767. Use @bf Source@symbol \256@bf Edit Breakpoints@rm  to list all breakpoints;\n\
  7768. then, click on @bf Lookup@rm  to jump to a breakpoint location.
  7769.  
  7770. Ddd*tip39: \
  7771. @rm You can assign user-defined buttons to frequently used commands.\n\
  7772. Try @bf Commands@symbol \256@bf Edit Buttons@rm .
  7773.  
  7774. Ddd*tip40: \
  7775. @rm In the Breakpoint and Display Editors,\n\
  7776. you can toggle the selection with @key Ctrl@rm +@bs mouse button 1@rm .\n\
  7777. This allows you to select non-contiguous ranges of items.
  7778.  
  7779. Ddd*tip41: \
  7780. @rm To change the properties of multiple breakpoints at once,\n\
  7781. select them in the breakpoint editor (@bf Source@symbol \256@bf Edit Breakpoints@rm )\n\
  7782. and click on @bf Properties@rm .
  7783.  
  7784. Ddd*tip42: \
  7785. @rm Even while in the source window, \n\
  7786. you can enter and edit GDB commands:\n\
  7787. Just type the command and press @key RETURN @symbol \277@rm .
  7788.  
  7789. Ddd*tip43: \
  7790. @rm You can record commands to be executed when a breakpoint is hit.\n\
  7791. In the @bf Breakpoint Properties@rm  panel, try @bf Record@rm  and @bf End@rm .
  7792.  
  7793. Ddd*tip44: \
  7794. @rm You can easily resume a saved DDD @sl session@rm \n\
  7795. by invoking DDD as `@tt ddd =@sl session@rm @rm'.
  7796.  
  7797. Ddd*tip45: \
  7798. @rm For further DDD customization (e.g. colors), see the `@tt Ddd@rm'\n\
  7799. app-defaults file from the DDD WWW Site or the DDD source\n\
  7800. distribution.  Copy resources to `@tt ~/.ddd/init@rm' and edit as desired.
  7801.  
  7802.  
  7803. ! Professional tips.
  7804.  
  7805. Ddd*tip46: \
  7806. @rm In GCC, `@tt -Wall@rm' does not enable all warnings.  See the GCC\n\
  7807. documentation for other warnings you might consider useful.\n\
  7808. \n        - @sl J.H.M. Dassen@rm  @tt<jdassen@ wi.leidenuniv.nl>@rm 
  7809.  
  7810. Ddd*tip47: \
  7811. @rm To get a global idea of what a process or program does or is doing,\n\
  7812. use a system call tracer, like `@tt strace@rm', `@tt truss@rm', or `@tt trace@rm'.\n\
  7813. \n        - @sl J.H.M. Dassen@rm  @tt<jdassen@ wi.leidenuniv.nl>@rm 
  7814.  
  7815. Ddd*tip48: \
  7816. @rm If you suspect memory corruption caused by problematic pointers, \n\
  7817. try linking with Electric Fence `@tt efence@rm' or the `@tt dbmalloc@rm' library.\n\
  7818. See the DDD WWW page for links.\n\
  7819. \n        - @sl J.H.M. Dassen@rm  @tt<jdassen@ wi.leidenuniv.nl>@rm 
  7820.  
  7821. Ddd*tip49: \
  7822. @rm Prevention is better than cure.  Document your assumptions using\n\
  7823. @tt <assert.h>@rm  or GNU NANA.  See the DDD WWW page for links.\n\
  7824. \n        - @sl J.H.M. Dassen@rm  @tt<jdassen@ wi.leidenuniv.nl>@rm 
  7825.  
  7826. Ddd*tip50: \
  7827. @rm The debugger isn't a substitute for good thinking.  But, in some\n\
  7828. cases, thinking isn't a substitute for a good debugger either.  The\n\
  7829. most effective combination is good thinking and a good debugger.\n\
  7830. \n        - @sl Steve McConnell@rm , Code Complete
  7831.  
  7832. Ddd*tip51: \
  7833. @rm When you're totally stuck, try to find a helpful ear.  In my experience,\n\
  7834. nothing helps you more in debugging than to try to explain your problem\n\
  7835. (what your code should do, and what it actually does) to someone else.\n\
  7836. \n        - @sl J.H.M. Dassen@rm  @tt<jdassen@ wi.leidenuniv.nl>@rm 
  7837.  
  7838. ! If you have other questions, comments or suggestions, contact The King via
  7839. ! electronic mail to @tt<elvis@ graceland.gnu.ai.mit.edu>@rm .  The King will
  7840. ! try to help you out, although he may not have time to fix your problems.
  7841. ! \n        - @sl Free Software Foundation@rm , GNU Hello Manual
  7842.  
  7843.