* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
;;; idlw-toolbar.el --- a debugging toolbar for IDLWAVE -*- lexical-binding: t; -*-
|
2007-01-21 03:53:13 +00:00
|
|
|
|
|
2024-01-02 01:47:10 +00:00
|
|
|
|
;; Copyright (C) 1999-2024 Free Software Foundation, Inc.
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
2002-07-18 18:58:07 +00:00
|
|
|
|
;; Author: Carsten Dominik <dominik@astro.uva.nl>
|
2019-06-08 17:21:16 +00:00
|
|
|
|
;; Maintainer: emacs-devel@gnu.org
|
2000-01-03 14:23:13 +00:00
|
|
|
|
;; Keywords: processes
|
2010-08-29 20:10:43 +00:00
|
|
|
|
;; Package: idlwave
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
;; This file is part of GNU Emacs.
|
|
|
|
|
|
2008-05-06 07:25:26 +00:00
|
|
|
|
;; GNU Emacs is free software: you can redistribute it and/or modify
|
2000-01-03 14:23:13 +00:00
|
|
|
|
;; it under the terms of the GNU General Public License as published by
|
2008-05-06 07:25:26 +00:00
|
|
|
|
;; the Free Software Foundation, either version 3 of the License, or
|
|
|
|
|
;; (at your option) any later version.
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
;; GNU Emacs is distributed in the hope that it will be useful,
|
|
|
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
;; GNU General Public License for more details.
|
|
|
|
|
|
|
|
|
|
;; You should have received a copy of the GNU General Public License
|
2017-09-13 22:52:52 +00:00
|
|
|
|
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
;;; Commentary:
|
|
|
|
|
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
;; This file implements a debugging toolbar for IDLWAVE.
|
|
|
|
|
;; It requires toolbar and xpm support.
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
2002-07-18 18:58:07 +00:00
|
|
|
|
;; New versions of IDLWAVE, documentation, and more information
|
|
|
|
|
;; available from:
|
2020-10-01 13:24:21 +00:00
|
|
|
|
;; https://github.com/jdtsmith/idlwave
|
2002-07-18 18:58:07 +00:00
|
|
|
|
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
;;; Code:
|
|
|
|
|
|
|
|
|
|
(defun idlwave-toolbar-make-button (image)
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
(list 'image :type 'xpm :data image))
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
2005-08-09 11:42:05 +00:00
|
|
|
|
(defvar idlwave-toolbar)
|
2006-04-06 18:42:40 +00:00
|
|
|
|
(defvar default-toolbar)
|
2005-08-09 11:42:05 +00:00
|
|
|
|
(defvar idlwave-toolbar-is-possible)
|
|
|
|
|
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
(if (not (and (boundp 'tool-bar-button-margin) ; need toolbar
|
|
|
|
|
(fboundp 'image-type-available-p) ; need image stuff
|
|
|
|
|
(image-type-available-p 'xpm)) ; need xpm
|
|
|
|
|
)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
;; oops - cannot do the toolbar
|
|
|
|
|
(message "Sorry, IDLWAVE xpm toolbar cannot be used on this version of Emacs")
|
|
|
|
|
;; OK, we can define a toolbar
|
|
|
|
|
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(defconst idlwave-toolbar-is-possible t
|
|
|
|
|
"When defined, indicates that a toolbar is possible with this Emacs.")
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(defvar idlwave-toolbar-compile-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 2 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" .. ... .. \",
|
|
|
|
|
\" .... ... .... \",
|
|
|
|
|
\" ............. \",
|
|
|
|
|
\" ........... \",
|
|
|
|
|
\" ................... \",
|
|
|
|
|
\" ........ ........ \",
|
|
|
|
|
\" ..... ........ \",
|
|
|
|
|
\" .... ......... \",
|
|
|
|
|
\" ..... .. ... ..... \",
|
|
|
|
|
\" ...... .. .. ...... \",
|
|
|
|
|
\" ..... ... .. ..... \",
|
|
|
|
|
\" ......... .... \",
|
|
|
|
|
\" ........ ..... \",
|
|
|
|
|
\" ........ ........ \",
|
|
|
|
|
\" ................... \",
|
|
|
|
|
\" ........... \",
|
|
|
|
|
\" ............. \",
|
|
|
|
|
\" .... ... .... \",
|
|
|
|
|
\" .. ... .. \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The compile icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-next-error-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" R \",
|
|
|
|
|
\" RR RRR RR \",
|
|
|
|
|
\" RRRR RRR RRRR \",
|
|
|
|
|
\" RRRRRRRRRRRRR \",
|
|
|
|
|
\" RRRRRRRRRRR \",
|
|
|
|
|
\" RRRRRRRRRRRRRRRRRRR \",
|
|
|
|
|
\" RRRRRRRR \",
|
|
|
|
|
\" RRRRR \",
|
|
|
|
|
\" RRRR \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" ......... \",
|
|
|
|
|
\" ..... .. ... ..... \",
|
|
|
|
|
\" ...... .. .. ...... \",
|
|
|
|
|
\" ..... ... .. ..... \",
|
|
|
|
|
\" ......... .... \",
|
|
|
|
|
\" ........ ..... \",
|
|
|
|
|
\" ........ ........ \",
|
|
|
|
|
\" ................... \",
|
|
|
|
|
\" ........... \",
|
|
|
|
|
\" ............. \",
|
|
|
|
|
\" .... ... .... \",
|
|
|
|
|
\" .. ... .. \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Next Error icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-stop-at-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .RRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRR. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Stop At icon.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-clear-at-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ... ... \",
|
|
|
|
|
\" ... ........ ... \",
|
|
|
|
|
\" ... .RRRRRRRR. ... \",
|
|
|
|
|
\" ....RRRRRRRRRR.... \",
|
|
|
|
|
\" ...RRRRRRRRRR... \",
|
|
|
|
|
\" ....RRRRRRRR.... \",
|
|
|
|
|
\" .RR...RRRRRR...RR. \",
|
|
|
|
|
\" .RRRR...RRRR...RRRR. \",
|
|
|
|
|
\" .RRRRR...RR...RRRRR. \",
|
|
|
|
|
\" .RRRRRR......RRRRRR. \",
|
|
|
|
|
\" .RRRRRRR....RRRRRRR. \",
|
|
|
|
|
\" .RRRRRRR....RRRRRRR. \",
|
|
|
|
|
\" .RRRRRR......RRRRRR. \",
|
|
|
|
|
\" .RRRRR...RR...RRRRR. \",
|
|
|
|
|
\" .RRRR...RRRR...RRRR. \",
|
|
|
|
|
\" .RR...RRRRRR...RR. \",
|
|
|
|
|
\" ....RRRRRRRR.... \",
|
|
|
|
|
\" ...RRRRRRRRRR... \",
|
|
|
|
|
\" ....RRRRRRRRRR.... \",
|
|
|
|
|
\" ... .RRRRRRRR. ... \",
|
|
|
|
|
\" ... ........ ... \",
|
|
|
|
|
\" ... ... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Clear At icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-clear-all-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 4 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"X c #FFFFFFFFFFFF\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" .. .... .... .. \",
|
|
|
|
|
\" ...RRRR. .RRRR... \",
|
|
|
|
|
\" ...RRRR. .RRRR... \",
|
|
|
|
|
\" .R...RRRR. .RRRR...R. \",
|
|
|
|
|
\" .RR...RRR. .RRR...RR. \",
|
|
|
|
|
\" .RRR...RR. .RR...RRR. \",
|
|
|
|
|
\" .RRRR...R. .R...RRRR. \",
|
|
|
|
|
\" .RRRR... ...RRRR. \",
|
|
|
|
|
\" .RRRR... ...RRRR. \",
|
|
|
|
|
\" .... ... ... .... \",
|
|
|
|
|
\" ..... \",
|
|
|
|
|
\" ... \",
|
|
|
|
|
\" .... ..... .... \",
|
|
|
|
|
\" .RRRR.... ....RRRR. \",
|
|
|
|
|
\" .RRRRR... ...RRRRR. \",
|
|
|
|
|
\" .RRRRR.... ....RRRRR. \",
|
|
|
|
|
\" .RRRR...R. .R...RRRR. \",
|
|
|
|
|
\" .RRR...RR. .RR...RRR. \",
|
|
|
|
|
\" .RR...RRR. .RRR...RR. \",
|
|
|
|
|
\" ....RRR. .RRR.... \",
|
|
|
|
|
\" ...RRR. .RRR... \",
|
|
|
|
|
\" ....... ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Clear-All icon.")
|
|
|
|
|
|
2004-11-17 05:54:20 +00:00
|
|
|
|
(defvar idlwave-toolbar-stop-beginning-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 4 1\",
|
|
|
|
|
\" c None s backgroundToolBarColor\",
|
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"X c #FFFF00000000\",
|
|
|
|
|
\"_ c #FFFFFFFFFFFF\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .XXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXXXXX. \",
|
|
|
|
|
\" .XX..XXXXXXXXXX. \",
|
|
|
|
|
\" .XX.XX.X______XXX. \",
|
|
|
|
|
\" .XXX.XX.X______XXXX. \",
|
|
|
|
|
\" .XXXX..XXXXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX____XXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX____XXXX. \",
|
|
|
|
|
\" .XXXXXXXXXXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX____XXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX____XXXX. \",
|
|
|
|
|
\" .XXXXXXXXXXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXX____XXX. \",
|
|
|
|
|
\" .XXXXXXXX____XX. \",
|
|
|
|
|
\" .XXXXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXXXX. \",
|
|
|
|
|
\" .XXXXXXXX. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Stop at Beginning icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-stop-in-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 4 1\",
|
|
|
|
|
\" c None s backgroundToolBarColor\",
|
|
|
|
|
\"_ c #FFFFFFFFFFFF\",
|
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .RRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRR___RR___RRR. \",
|
|
|
|
|
\" .RRRR__RRRR__RRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRR__RRRRRR__RRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRRR__RRRR__RRRRR. \",
|
|
|
|
|
\" .RRRR___RR___RRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRRRR. \",
|
|
|
|
|
\" .RRRRRRRR. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Stop in icon.")
|
|
|
|
|
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(defvar idlwave-toolbar-edit-cmd-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 2 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ................. \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
2021-09-14 06:43:18 +00:00
|
|
|
|
"The edit-cmd icon.")
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-run-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". s FgColor c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ..... \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. ....... \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. ....... \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" ....GGG.... \",
|
|
|
|
|
\" .GGGGGGG. ....... \",
|
|
|
|
|
\" .GGGGG. \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .G. ....... \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Run icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-cont-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". s FgColor c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" .GGGGGG. ....... \",
|
|
|
|
|
\" .GGGGGGG. \",
|
|
|
|
|
\" .GGG..... \",
|
|
|
|
|
\" .GGG. ....... \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .GGG. ....... \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" ....GGG.... \",
|
|
|
|
|
\" .GGGGGGG. ....... \",
|
|
|
|
|
\" .GGGGG. \",
|
|
|
|
|
\" .GGG. \",
|
|
|
|
|
\" .G. ....... \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
2016-03-24 23:48:46 +00:00
|
|
|
|
"The Cont icon.")
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-to-here-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 4 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ..... ........ \",
|
|
|
|
|
\" .GGGG. \",
|
|
|
|
|
\" .GGGGG. \",
|
|
|
|
|
\" .GG.... ........ \",
|
|
|
|
|
\" .GG. \",
|
|
|
|
|
\" .GG. . \",
|
|
|
|
|
\" .GG. .. \",
|
|
|
|
|
\" .GG. .G. ...... \",
|
|
|
|
|
\" .GG...GG. \",
|
|
|
|
|
\" .GGGGGGGG. RRRRRR \",
|
|
|
|
|
\" .GGGGGGGGG. RRRRRR \",
|
|
|
|
|
\" .GGGGGGG. RRRRRR \",
|
|
|
|
|
\" ....GG. \",
|
|
|
|
|
\" .G. ...... \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Cont-to-here icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-step-over-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ..... \",
|
|
|
|
|
\" .GGGG. ....... \",
|
|
|
|
|
\" .GGGGG. \",
|
|
|
|
|
\" .GG.... \",
|
|
|
|
|
\" .GG. ....... \",
|
|
|
|
|
\" .GG. . \",
|
|
|
|
|
\" .GG. .. \",
|
|
|
|
|
\" .GG. .G. ....... \",
|
|
|
|
|
\" .GG...GG. \",
|
|
|
|
|
\" .GGGGGGGG. \",
|
|
|
|
|
\" .GGGGGGGGG. ....... \",
|
|
|
|
|
\" .GGGGGGG. \",
|
|
|
|
|
\" ....GG. \",
|
|
|
|
|
\" .G. ....... \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Step Over icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-step-into-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ..... ....... \",
|
|
|
|
|
\" .GGGG. \",
|
|
|
|
|
\" .GGGGG. \",
|
|
|
|
|
\" .GG.... ........ \",
|
|
|
|
|
\" .GG. \",
|
|
|
|
|
\" .GG. . \",
|
|
|
|
|
\" .GG. .. \",
|
|
|
|
|
\" .GG. .G. \",
|
|
|
|
|
\" .GG...GG. ....... \",
|
|
|
|
|
\" .GGGGGGGG. \",
|
|
|
|
|
\" .GGGGGGGGG. \",
|
|
|
|
|
\" .GGGGGGG. ....... \",
|
|
|
|
|
\" ....GG. \",
|
|
|
|
|
\" .G. \",
|
|
|
|
|
\" .. ....... \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Step Into icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-step-out-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" .. ........ \",
|
|
|
|
|
\" .G. \",
|
|
|
|
|
\" ....GG. \",
|
|
|
|
|
\" .GGGGGGG. ........ \",
|
|
|
|
|
\" .GGGGGGGGG. \",
|
|
|
|
|
\" .GGGGGGGG. \",
|
|
|
|
|
\" .GG...GG. ........ \",
|
|
|
|
|
\" .GG. .G. \",
|
|
|
|
|
\" .GG. .. \",
|
|
|
|
|
\" .GG. . \",
|
|
|
|
|
\" .GG. \",
|
|
|
|
|
\" .GG....... ....... \",
|
|
|
|
|
\" .GGGGGGGG. \",
|
|
|
|
|
\" .GGGGGGG. \",
|
|
|
|
|
\" ........ ....... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Step up icon.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-eval-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 2 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" .... \",
|
|
|
|
|
\" .. .. ...... \",
|
|
|
|
|
\" .. .. ...... \",
|
|
|
|
|
\" .. .. \",
|
|
|
|
|
\" .. .. ...... \",
|
|
|
|
|
\" .. .. ...... \",
|
|
|
|
|
\" .... \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Evaluate icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-stack-up-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 5 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". s FgColor c #000000000000\",
|
|
|
|
|
\"_ c #FFFFFFFFFFFF\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ........ . \",
|
|
|
|
|
\" .______. ... \",
|
|
|
|
|
\" .______. ..... \",
|
|
|
|
|
\" .______. ....... \",
|
|
|
|
|
\" .______. ... \",
|
|
|
|
|
\" .______. ... \",
|
|
|
|
|
\" ........ ... \",
|
|
|
|
|
\" .GGGGGG. ... \",
|
|
|
|
|
\" .GGGGGG. ... \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .RRRRRR. \",
|
|
|
|
|
\" .RRRRRR. \",
|
|
|
|
|
\" .RRRRRR. \",
|
|
|
|
|
\" .RRRRRR. \",
|
|
|
|
|
\" .RRRRRR. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Stack Up icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-stack-down-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 5 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\". s FgColor c #000000000000\",
|
|
|
|
|
\"_ c #FFFFFFFFFFFF\",
|
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\"R c #FFFF00000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .______. \",
|
|
|
|
|
\" .______. \",
|
|
|
|
|
\" .______. \",
|
|
|
|
|
\" .______. \",
|
|
|
|
|
\" .______. \",
|
|
|
|
|
\" ........ \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .GGGGGG. ... \",
|
|
|
|
|
\" .GGGGGG. ... \",
|
|
|
|
|
\" ........ ... \",
|
|
|
|
|
\" .RRRRRR. ... \",
|
|
|
|
|
\" .RRRRRR. ... \",
|
|
|
|
|
\" .RRRRRR. ....... \",
|
|
|
|
|
\" .RRRRRR. ..... \",
|
|
|
|
|
\" .RRRRRR. ... \",
|
|
|
|
|
\" ........ . \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Stack Down icon.")
|
|
|
|
|
|
|
|
|
|
(defvar idlwave-toolbar-reset-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 3 1\",
|
2002-07-18 18:58:07 +00:00
|
|
|
|
\" c None s backgroundToolBarColor\",
|
2000-01-03 14:23:13 +00:00
|
|
|
|
\"G c #0000BBBB0000\",
|
|
|
|
|
\". c #000000000000\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" . \",
|
|
|
|
|
\" .G. . \",
|
|
|
|
|
\" .GGG.. .G. \",
|
|
|
|
|
\" .GGGGG..GG. \",
|
|
|
|
|
\" ..GGGGGGGG. \",
|
|
|
|
|
\" ..GGGGGG. \",
|
|
|
|
|
\" ..GGGGG. \",
|
|
|
|
|
\" .GGGGGG. \",
|
|
|
|
|
\" .G...... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" ..... \",
|
|
|
|
|
\" ......... \",
|
|
|
|
|
\" ......... \",
|
|
|
|
|
\" ......... \",
|
|
|
|
|
\" . ..... . \",
|
|
|
|
|
\" . . \",
|
|
|
|
|
\" . . \",
|
|
|
|
|
\" . . \",
|
|
|
|
|
\" . . \",
|
|
|
|
|
\" . . \",
|
|
|
|
|
\" .. .. \",
|
|
|
|
|
\" ....... \",
|
|
|
|
|
\" ..... \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The Reset icon.")
|
|
|
|
|
|
2004-11-17 05:54:20 +00:00
|
|
|
|
(defvar idlwave-toolbar-electric-debug-icon
|
|
|
|
|
(idlwave-toolbar-make-button
|
|
|
|
|
"/* XPM */
|
|
|
|
|
static char * file[] = {
|
|
|
|
|
\"28 28 8 1\",
|
|
|
|
|
\" c None s backgroundToolBarColor\",
|
|
|
|
|
\". c #CFC854\",
|
|
|
|
|
\"+ c #EEDB0E\",
|
|
|
|
|
\"@ c #D2C739\",
|
|
|
|
|
\"# c #A39C54\",
|
|
|
|
|
\"$ c #CDC020\",
|
|
|
|
|
\"% c #020202\",
|
|
|
|
|
\"& c #D60E36\",
|
|
|
|
|
\" \",
|
|
|
|
|
\" \",
|
|
|
|
|
\" .. \",
|
|
|
|
|
\" +++++@ \",
|
|
|
|
|
\" ++++++ \",
|
|
|
|
|
\" +++++@ \",
|
|
|
|
|
\" +++++ \",
|
|
|
|
|
\" #++++@ \",
|
|
|
|
|
\" $+++@ %% %% \",
|
|
|
|
|
\" ++++++$ % % \",
|
|
|
|
|
\" #+++++$ % % \",
|
|
|
|
|
\" #++$# %%% \",
|
|
|
|
|
\" #+++ %%%%%%% \",
|
|
|
|
|
\" .++ %%%%%%%%%%% \",
|
|
|
|
|
\" ++$$ %%%%%%%%%%% \",
|
|
|
|
|
\" .+@# &&%%%%%%%&& \",
|
|
|
|
|
\" .++++# &&&&&%%%&&&&& \",
|
|
|
|
|
\" +++++$ &&%%&&&&&%%&& \",
|
|
|
|
|
\" $+++$ &&%%&&&&&%%&& \",
|
|
|
|
|
\" $++@ &&&&&&%&&&&&& \",
|
|
|
|
|
\" $+@ &&&&&&%&&&&&& \",
|
|
|
|
|
\" @+ &&%%&&&&&%%&& \",
|
|
|
|
|
\" ++. &%%&&%&&%%& \",
|
|
|
|
|
\" +. &&&&%%%&&&& \",
|
|
|
|
|
\" .+ &&%%%%%&& \",
|
|
|
|
|
\" ++ %%%%%%% \",
|
|
|
|
|
\" . %%% \",
|
|
|
|
|
\" \"};")
|
|
|
|
|
"The electric debug icon.")
|
|
|
|
|
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(defvar idlwave-toolbar
|
|
|
|
|
'(
|
|
|
|
|
[idlwave-toolbar-compile-icon
|
|
|
|
|
idlwave-shell-save-and-compile
|
|
|
|
|
t
|
|
|
|
|
"Save and Compile this file (or recompile last)"]
|
|
|
|
|
[idlwave-toolbar-next-error-icon
|
|
|
|
|
idlwave-shell-goto-next-error
|
|
|
|
|
t
|
|
|
|
|
"Goto Next Error"]
|
|
|
|
|
[idlwave-toolbar-stop-at-icon
|
|
|
|
|
idlwave-shell-break-here
|
Derive from prog-mode, use derived-mode-p, and fix up various
minor style issues in lisp/progmodes.
* lisp/progmodes/vhdl-mode.el (vhdl-write-file-hooks-init)
(vhdl-hs-minor-mode, vhdl-ps-print-init): Fix make-local-variable ->
make-local-hook.
* lisp/progmodes/sh-script.el (sh-require-final-newline): Remove.
(sh-set-shell): Don't set require-final-newline since it's already done
by prog-mode.
* lisp/progmodes/modula2.el (m2-mode): Don't make m2-end-comment-column
since we never set it.
* lisp/progmodes/ebrowse.el (ebrowse-set-tree-indentation):
Use read-string and standard prompt.
* lisp/progmodes/dcl-mode.el (dcl-mode-map): Move init into declaration.
* lisp/progmodes/meta-mode.el (meta-mode-abbrev-table): Merge init and decl.
(meta-common-mode-syntax-table): Rename from meta-mode-syntax-table.
(meta-common-mode-map): Rename from meta-mode-map.
Remove C-m binding, which is a user preference, not mode specific.
(meta-common-mode): New major mode; replace meta-common-initialization.
* lisp/progmodes/js.el (js-mode): Call syntax-propertize rather than messing
around with font-lock.
* lisp/progmodes/etags.el (select-tags-table-mode):
Derive from special-mode.
* lisp/progmodes/octave-mod.el (octave-mode):
* lisp/progmodes/gdb-mi.el (gdb-inferior-io-mode, gdb-threads-mode)
(gdb-memory-mode, gdb-disassembly-mode, gdb-breakpoints-mode)
(gdb-frames-mode, gdb-locals-mode, gdb-registers-mode):
Let define-derived-mode do its job.
* lisp/progmodes/cpp.el (cpp-edit-mode-map):
Move initialization into declaration.
(cpp-edit-mode): Use define-derived-mode.
(cpp-edit-load): Use derived-mode-p.
* lisp/progmodes/mixal-mode.el (mixal-mode):
* lisp/progmodes/f90.el (f90-mode):
* lisp/progmodes/cfengine.el (cfengine-mode): Don't bother setting
require-final-newline since prog-mode does it already.
* lisp/progmodes/cc-cmds.el (c-update-modeline): Use match-string.
* lisp/progmodes/asm-mode.el (asm-mode-map): Fix menu setup.
* lisp/progmodes/antlr-mode.el: Require cc-mode upfront.
(antlr-mode-syntax-table, antlr-action-syntax-table): Initialize in
the declaration.
(antlr-directory-dependencies, antlr-show-makefile-rules):
Use derived-mode-p.
(antlr-language-option): Don't assume point-min==1.
(antlr-mode): Use define-derived-mode.
* lisp/progmodes/ada-mode.el: Use derived-mode-p.
(ada-mode): Use define-derived-mode.
Use hack-local-variables-hook.
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/progmodes/verilog-mode.el (verilog-mode):
* lisp/progmodes/vera-mode.el (vera-mode):
* lisp/progmodes/sql.el (sql-mode):
* lisp/progmodes/scheme.el (scheme-mode):
* lisp/progmodes/perl-mode.el (perl-mode):
* lisp/progmodes/octave-inf.el (inferior-octave-mode):
* lisp/progmodes/autoconf.el (autoconf-mode):
* lisp/progmodes/m4-mode.el (m4-mode):
* lisp/progmodes/inf-lisp.el (inferior-lisp-mode):
* lisp/progmodes/idlwave.el (idlwave-mode):
* lisp/progmodes/icon.el (icon-mode):
* lisp/progmodes/idlw-help.el (idlwave-help-mode):
* lisp/progmodes/dcl-mode.el (dcl-mode):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-electric-list-mode)
(ebrowse-member-mode, ebrowse-electric-position-mode):
Use define-derived-mode.
* lisp/progmodes/xscheme.el (xscheme-start)
(local-set-scheme-interaction-buffer, scheme-interaction-mode):
* lisp/progmodes/which-func.el (which-function):
* lisp/progmodes/vhdl-mode.el (vhdl-set-style):
* lisp/progmodes/verilog-mode.el (verilog-set-compile-command)
(verilog-modify-compile-command, verilog-error-regexp-add-xemacs)
(verilog-set-define, verilog-auto-reeval-locals):
* lisp/progmodes/sql.el (sql-product-font-lock, sql-interactive-mode):
* lisp/progmodes/simula.el (simula-mode):
* lisp/progmodes/scheme.el (scheme-mode-variables, dsssl-mode):
* lisp/progmodes/python.el (python-check, python-mode):
* lisp/progmodes/prolog.el (prolog-mode-variables):
* lisp/progmodes/gud.el (gud-tooltip-activate-mouse-motions):
* lisp/progmodes/ebrowse.el (ebrowse-view-file-other-frame):
* lisp/progmodes/delphi.el (delphi-mode):
* lisp/progmodes/cc-styles.el (c-setup-paragraph-variables):
* lisp/progmodes/cc-mode.el (c-basic-common-init, c-common-init)
(c-font-lock-init): Move make-local-variable to their setq.
* lisp/progmodes/xscheme.el (exit-scheme-interaction-mode)
(xscheme-enter-interaction-mode, xscheme-enter-debugger-mode)
(xscheme-debugger-mode-p, xscheme-send-string-1):
* lisp/progmodes/tcl.el (inferior-tcl-proc, tcl-current-word)
(tcl-load-file, tcl-restart-with-file):
* lisp/progmodes/ps-mode.el (ps-run-running):
* lisp/progmodes/gdb-mi.el (gud-watch, gdb-mouse-set-clear-breakpoint):
* lisp/progmodes/js.el (js--get-all-known-symbols):
* lisp/progmodes/inf-lisp.el (inferior-lisp-proc):
* lisp/progmodes/idlwave.el (idlwave-beginning-of-statement)
(idlwave-template, idlwave-update-buffer-routine-info)
(idlwave-update-current-buffer-info)
(idlwave-get-routine-info-from-buffers, idlwave-choose)
(idlwave-scan-class-info, idlwave-fix-keywords)
(idlwave-list-buffer-load-path-shadows):
* lisp/progmodes/idlw-toolbar.el (idlwave-toolbar, idlwave-toolbar-add)
(idlwave-toolbar-remove):
* lisp/progmodes/idlw-shell.el (idlwave-shell-save-and-action)
(idlwave-shell-file-name, idlwave-shell-electric-debug-all-off)
(idlwave-shell-menu-def):
* lisp/progmodes/idlw-complete-structtag.el
(idlwave-prepare-structure-tag-completion):
* lisp/progmodes/gud.el (gud-set-buffer):
* lisp/progmodes/f90.el (f90-backslash-not-special):
* lisp/progmodes/delphi.el (delphi-find-unit): Use derived-mode-p.
2010-12-10 20:00:25 +00:00
|
|
|
|
(derived-mode-p 'idlwave-mode)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
"Set Breakpoint at selected position"]
|
|
|
|
|
[idlwave-toolbar-clear-at-icon
|
|
|
|
|
idlwave-shell-clear-current-bp
|
|
|
|
|
t
|
|
|
|
|
"Clear Breakpoint at selected position"]
|
|
|
|
|
[idlwave-toolbar-clear-all-icon
|
|
|
|
|
idlwave-shell-clear-all-bp
|
|
|
|
|
t
|
|
|
|
|
"Clear all Breakpoints"]
|
2004-11-17 05:54:20 +00:00
|
|
|
|
[idlwave-toolbar-stop-beginning-icon
|
|
|
|
|
idlwave-shell-break-this-module
|
Derive from prog-mode, use derived-mode-p, and fix up various
minor style issues in lisp/progmodes.
* lisp/progmodes/vhdl-mode.el (vhdl-write-file-hooks-init)
(vhdl-hs-minor-mode, vhdl-ps-print-init): Fix make-local-variable ->
make-local-hook.
* lisp/progmodes/sh-script.el (sh-require-final-newline): Remove.
(sh-set-shell): Don't set require-final-newline since it's already done
by prog-mode.
* lisp/progmodes/modula2.el (m2-mode): Don't make m2-end-comment-column
since we never set it.
* lisp/progmodes/ebrowse.el (ebrowse-set-tree-indentation):
Use read-string and standard prompt.
* lisp/progmodes/dcl-mode.el (dcl-mode-map): Move init into declaration.
* lisp/progmodes/meta-mode.el (meta-mode-abbrev-table): Merge init and decl.
(meta-common-mode-syntax-table): Rename from meta-mode-syntax-table.
(meta-common-mode-map): Rename from meta-mode-map.
Remove C-m binding, which is a user preference, not mode specific.
(meta-common-mode): New major mode; replace meta-common-initialization.
* lisp/progmodes/js.el (js-mode): Call syntax-propertize rather than messing
around with font-lock.
* lisp/progmodes/etags.el (select-tags-table-mode):
Derive from special-mode.
* lisp/progmodes/octave-mod.el (octave-mode):
* lisp/progmodes/gdb-mi.el (gdb-inferior-io-mode, gdb-threads-mode)
(gdb-memory-mode, gdb-disassembly-mode, gdb-breakpoints-mode)
(gdb-frames-mode, gdb-locals-mode, gdb-registers-mode):
Let define-derived-mode do its job.
* lisp/progmodes/cpp.el (cpp-edit-mode-map):
Move initialization into declaration.
(cpp-edit-mode): Use define-derived-mode.
(cpp-edit-load): Use derived-mode-p.
* lisp/progmodes/mixal-mode.el (mixal-mode):
* lisp/progmodes/f90.el (f90-mode):
* lisp/progmodes/cfengine.el (cfengine-mode): Don't bother setting
require-final-newline since prog-mode does it already.
* lisp/progmodes/cc-cmds.el (c-update-modeline): Use match-string.
* lisp/progmodes/asm-mode.el (asm-mode-map): Fix menu setup.
* lisp/progmodes/antlr-mode.el: Require cc-mode upfront.
(antlr-mode-syntax-table, antlr-action-syntax-table): Initialize in
the declaration.
(antlr-directory-dependencies, antlr-show-makefile-rules):
Use derived-mode-p.
(antlr-language-option): Don't assume point-min==1.
(antlr-mode): Use define-derived-mode.
* lisp/progmodes/ada-mode.el: Use derived-mode-p.
(ada-mode): Use define-derived-mode.
Use hack-local-variables-hook.
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/progmodes/verilog-mode.el (verilog-mode):
* lisp/progmodes/vera-mode.el (vera-mode):
* lisp/progmodes/sql.el (sql-mode):
* lisp/progmodes/scheme.el (scheme-mode):
* lisp/progmodes/perl-mode.el (perl-mode):
* lisp/progmodes/octave-inf.el (inferior-octave-mode):
* lisp/progmodes/autoconf.el (autoconf-mode):
* lisp/progmodes/m4-mode.el (m4-mode):
* lisp/progmodes/inf-lisp.el (inferior-lisp-mode):
* lisp/progmodes/idlwave.el (idlwave-mode):
* lisp/progmodes/icon.el (icon-mode):
* lisp/progmodes/idlw-help.el (idlwave-help-mode):
* lisp/progmodes/dcl-mode.el (dcl-mode):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-electric-list-mode)
(ebrowse-member-mode, ebrowse-electric-position-mode):
Use define-derived-mode.
* lisp/progmodes/xscheme.el (xscheme-start)
(local-set-scheme-interaction-buffer, scheme-interaction-mode):
* lisp/progmodes/which-func.el (which-function):
* lisp/progmodes/vhdl-mode.el (vhdl-set-style):
* lisp/progmodes/verilog-mode.el (verilog-set-compile-command)
(verilog-modify-compile-command, verilog-error-regexp-add-xemacs)
(verilog-set-define, verilog-auto-reeval-locals):
* lisp/progmodes/sql.el (sql-product-font-lock, sql-interactive-mode):
* lisp/progmodes/simula.el (simula-mode):
* lisp/progmodes/scheme.el (scheme-mode-variables, dsssl-mode):
* lisp/progmodes/python.el (python-check, python-mode):
* lisp/progmodes/prolog.el (prolog-mode-variables):
* lisp/progmodes/gud.el (gud-tooltip-activate-mouse-motions):
* lisp/progmodes/ebrowse.el (ebrowse-view-file-other-frame):
* lisp/progmodes/delphi.el (delphi-mode):
* lisp/progmodes/cc-styles.el (c-setup-paragraph-variables):
* lisp/progmodes/cc-mode.el (c-basic-common-init, c-common-init)
(c-font-lock-init): Move make-local-variable to their setq.
* lisp/progmodes/xscheme.el (exit-scheme-interaction-mode)
(xscheme-enter-interaction-mode, xscheme-enter-debugger-mode)
(xscheme-debugger-mode-p, xscheme-send-string-1):
* lisp/progmodes/tcl.el (inferior-tcl-proc, tcl-current-word)
(tcl-load-file, tcl-restart-with-file):
* lisp/progmodes/ps-mode.el (ps-run-running):
* lisp/progmodes/gdb-mi.el (gud-watch, gdb-mouse-set-clear-breakpoint):
* lisp/progmodes/js.el (js--get-all-known-symbols):
* lisp/progmodes/inf-lisp.el (inferior-lisp-proc):
* lisp/progmodes/idlwave.el (idlwave-beginning-of-statement)
(idlwave-template, idlwave-update-buffer-routine-info)
(idlwave-update-current-buffer-info)
(idlwave-get-routine-info-from-buffers, idlwave-choose)
(idlwave-scan-class-info, idlwave-fix-keywords)
(idlwave-list-buffer-load-path-shadows):
* lisp/progmodes/idlw-toolbar.el (idlwave-toolbar, idlwave-toolbar-add)
(idlwave-toolbar-remove):
* lisp/progmodes/idlw-shell.el (idlwave-shell-save-and-action)
(idlwave-shell-file-name, idlwave-shell-electric-debug-all-off)
(idlwave-shell-menu-def):
* lisp/progmodes/idlw-complete-structtag.el
(idlwave-prepare-structure-tag-completion):
* lisp/progmodes/gud.el (gud-set-buffer):
* lisp/progmodes/f90.el (f90-backslash-not-special):
* lisp/progmodes/delphi.el (delphi-find-unit): Use derived-mode-p.
2010-12-10 20:00:25 +00:00
|
|
|
|
(derived-mode-p 'idlwave-mode)
|
2004-11-17 05:54:20 +00:00
|
|
|
|
"Stop at beginning of enclosing Routine"]
|
|
|
|
|
[idlwave-toolbar-stop-in-icon
|
|
|
|
|
idlwave-shell-break-in
|
|
|
|
|
t
|
|
|
|
|
"Stop in Routine with name near point"]
|
2000-01-03 14:23:13 +00:00
|
|
|
|
[idlwave-toolbar-edit-cmd-icon
|
|
|
|
|
idlwave-shell-edit-default-command-line
|
|
|
|
|
t
|
|
|
|
|
"Edit Default Command Line"]
|
|
|
|
|
[idlwave-toolbar-run-icon
|
|
|
|
|
idlwave-shell-execute-default-command-line
|
|
|
|
|
t
|
|
|
|
|
"Reset, then Execute Default Command Line"]
|
|
|
|
|
[idlwave-toolbar-cont-icon
|
|
|
|
|
idlwave-shell-cont
|
|
|
|
|
t
|
|
|
|
|
"Continue Current Program"]
|
|
|
|
|
[idlwave-toolbar-to-here-icon
|
|
|
|
|
idlwave-shell-to-here
|
Derive from prog-mode, use derived-mode-p, and fix up various
minor style issues in lisp/progmodes.
* lisp/progmodes/vhdl-mode.el (vhdl-write-file-hooks-init)
(vhdl-hs-minor-mode, vhdl-ps-print-init): Fix make-local-variable ->
make-local-hook.
* lisp/progmodes/sh-script.el (sh-require-final-newline): Remove.
(sh-set-shell): Don't set require-final-newline since it's already done
by prog-mode.
* lisp/progmodes/modula2.el (m2-mode): Don't make m2-end-comment-column
since we never set it.
* lisp/progmodes/ebrowse.el (ebrowse-set-tree-indentation):
Use read-string and standard prompt.
* lisp/progmodes/dcl-mode.el (dcl-mode-map): Move init into declaration.
* lisp/progmodes/meta-mode.el (meta-mode-abbrev-table): Merge init and decl.
(meta-common-mode-syntax-table): Rename from meta-mode-syntax-table.
(meta-common-mode-map): Rename from meta-mode-map.
Remove C-m binding, which is a user preference, not mode specific.
(meta-common-mode): New major mode; replace meta-common-initialization.
* lisp/progmodes/js.el (js-mode): Call syntax-propertize rather than messing
around with font-lock.
* lisp/progmodes/etags.el (select-tags-table-mode):
Derive from special-mode.
* lisp/progmodes/octave-mod.el (octave-mode):
* lisp/progmodes/gdb-mi.el (gdb-inferior-io-mode, gdb-threads-mode)
(gdb-memory-mode, gdb-disassembly-mode, gdb-breakpoints-mode)
(gdb-frames-mode, gdb-locals-mode, gdb-registers-mode):
Let define-derived-mode do its job.
* lisp/progmodes/cpp.el (cpp-edit-mode-map):
Move initialization into declaration.
(cpp-edit-mode): Use define-derived-mode.
(cpp-edit-load): Use derived-mode-p.
* lisp/progmodes/mixal-mode.el (mixal-mode):
* lisp/progmodes/f90.el (f90-mode):
* lisp/progmodes/cfengine.el (cfengine-mode): Don't bother setting
require-final-newline since prog-mode does it already.
* lisp/progmodes/cc-cmds.el (c-update-modeline): Use match-string.
* lisp/progmodes/asm-mode.el (asm-mode-map): Fix menu setup.
* lisp/progmodes/antlr-mode.el: Require cc-mode upfront.
(antlr-mode-syntax-table, antlr-action-syntax-table): Initialize in
the declaration.
(antlr-directory-dependencies, antlr-show-makefile-rules):
Use derived-mode-p.
(antlr-language-option): Don't assume point-min==1.
(antlr-mode): Use define-derived-mode.
* lisp/progmodes/ada-mode.el: Use derived-mode-p.
(ada-mode): Use define-derived-mode.
Use hack-local-variables-hook.
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/progmodes/verilog-mode.el (verilog-mode):
* lisp/progmodes/vera-mode.el (vera-mode):
* lisp/progmodes/sql.el (sql-mode):
* lisp/progmodes/scheme.el (scheme-mode):
* lisp/progmodes/perl-mode.el (perl-mode):
* lisp/progmodes/octave-inf.el (inferior-octave-mode):
* lisp/progmodes/autoconf.el (autoconf-mode):
* lisp/progmodes/m4-mode.el (m4-mode):
* lisp/progmodes/inf-lisp.el (inferior-lisp-mode):
* lisp/progmodes/idlwave.el (idlwave-mode):
* lisp/progmodes/icon.el (icon-mode):
* lisp/progmodes/idlw-help.el (idlwave-help-mode):
* lisp/progmodes/dcl-mode.el (dcl-mode):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-electric-list-mode)
(ebrowse-member-mode, ebrowse-electric-position-mode):
Use define-derived-mode.
* lisp/progmodes/xscheme.el (xscheme-start)
(local-set-scheme-interaction-buffer, scheme-interaction-mode):
* lisp/progmodes/which-func.el (which-function):
* lisp/progmodes/vhdl-mode.el (vhdl-set-style):
* lisp/progmodes/verilog-mode.el (verilog-set-compile-command)
(verilog-modify-compile-command, verilog-error-regexp-add-xemacs)
(verilog-set-define, verilog-auto-reeval-locals):
* lisp/progmodes/sql.el (sql-product-font-lock, sql-interactive-mode):
* lisp/progmodes/simula.el (simula-mode):
* lisp/progmodes/scheme.el (scheme-mode-variables, dsssl-mode):
* lisp/progmodes/python.el (python-check, python-mode):
* lisp/progmodes/prolog.el (prolog-mode-variables):
* lisp/progmodes/gud.el (gud-tooltip-activate-mouse-motions):
* lisp/progmodes/ebrowse.el (ebrowse-view-file-other-frame):
* lisp/progmodes/delphi.el (delphi-mode):
* lisp/progmodes/cc-styles.el (c-setup-paragraph-variables):
* lisp/progmodes/cc-mode.el (c-basic-common-init, c-common-init)
(c-font-lock-init): Move make-local-variable to their setq.
* lisp/progmodes/xscheme.el (exit-scheme-interaction-mode)
(xscheme-enter-interaction-mode, xscheme-enter-debugger-mode)
(xscheme-debugger-mode-p, xscheme-send-string-1):
* lisp/progmodes/tcl.el (inferior-tcl-proc, tcl-current-word)
(tcl-load-file, tcl-restart-with-file):
* lisp/progmodes/ps-mode.el (ps-run-running):
* lisp/progmodes/gdb-mi.el (gud-watch, gdb-mouse-set-clear-breakpoint):
* lisp/progmodes/js.el (js--get-all-known-symbols):
* lisp/progmodes/inf-lisp.el (inferior-lisp-proc):
* lisp/progmodes/idlwave.el (idlwave-beginning-of-statement)
(idlwave-template, idlwave-update-buffer-routine-info)
(idlwave-update-current-buffer-info)
(idlwave-get-routine-info-from-buffers, idlwave-choose)
(idlwave-scan-class-info, idlwave-fix-keywords)
(idlwave-list-buffer-load-path-shadows):
* lisp/progmodes/idlw-toolbar.el (idlwave-toolbar, idlwave-toolbar-add)
(idlwave-toolbar-remove):
* lisp/progmodes/idlw-shell.el (idlwave-shell-save-and-action)
(idlwave-shell-file-name, idlwave-shell-electric-debug-all-off)
(idlwave-shell-menu-def):
* lisp/progmodes/idlw-complete-structtag.el
(idlwave-prepare-structure-tag-completion):
* lisp/progmodes/gud.el (gud-set-buffer):
* lisp/progmodes/f90.el (f90-backslash-not-special):
* lisp/progmodes/delphi.el (delphi-find-unit): Use derived-mode-p.
2010-12-10 20:00:25 +00:00
|
|
|
|
(derived-mode-p 'idlwave-mode)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
"Continue to Here (cursor position)"]
|
|
|
|
|
[idlwave-toolbar-step-over-icon
|
|
|
|
|
idlwave-shell-stepover
|
|
|
|
|
t
|
|
|
|
|
"Step Over (aka next)"]
|
|
|
|
|
[idlwave-toolbar-step-into-icon
|
|
|
|
|
idlwave-shell-step
|
|
|
|
|
t
|
|
|
|
|
"Step Into (aka step)"]
|
|
|
|
|
[idlwave-toolbar-step-out-icon
|
|
|
|
|
idlwave-shell-out
|
|
|
|
|
t
|
|
|
|
|
"Step Out (of subroutine)"]
|
|
|
|
|
[idlwave-toolbar-eval-icon
|
|
|
|
|
idlwave-shell-print
|
|
|
|
|
t
|
|
|
|
|
"Print Expression at or before Point"]
|
|
|
|
|
[idlwave-toolbar-stack-up-icon
|
|
|
|
|
idlwave-shell-stack-up
|
|
|
|
|
t
|
|
|
|
|
"Stack Up (towards \"cooler\" - less recently visited - frames)"]
|
|
|
|
|
[idlwave-toolbar-stack-down-icon
|
|
|
|
|
idlwave-shell-stack-down
|
|
|
|
|
t
|
|
|
|
|
"Stack Down (towards \"warmer\" - more recently visited - frames)"]
|
|
|
|
|
[idlwave-toolbar-reset-icon
|
|
|
|
|
idlwave-shell-reset
|
|
|
|
|
t
|
|
|
|
|
"Reset IDL (RETALL & CLOSE,/ALL and more)"]
|
2004-11-17 05:54:20 +00:00
|
|
|
|
[idlwave-toolbar-electric-debug-icon
|
|
|
|
|
idlwave-shell-electric-debug-mode
|
Derive from prog-mode, use derived-mode-p, and fix up various
minor style issues in lisp/progmodes.
* lisp/progmodes/vhdl-mode.el (vhdl-write-file-hooks-init)
(vhdl-hs-minor-mode, vhdl-ps-print-init): Fix make-local-variable ->
make-local-hook.
* lisp/progmodes/sh-script.el (sh-require-final-newline): Remove.
(sh-set-shell): Don't set require-final-newline since it's already done
by prog-mode.
* lisp/progmodes/modula2.el (m2-mode): Don't make m2-end-comment-column
since we never set it.
* lisp/progmodes/ebrowse.el (ebrowse-set-tree-indentation):
Use read-string and standard prompt.
* lisp/progmodes/dcl-mode.el (dcl-mode-map): Move init into declaration.
* lisp/progmodes/meta-mode.el (meta-mode-abbrev-table): Merge init and decl.
(meta-common-mode-syntax-table): Rename from meta-mode-syntax-table.
(meta-common-mode-map): Rename from meta-mode-map.
Remove C-m binding, which is a user preference, not mode specific.
(meta-common-mode): New major mode; replace meta-common-initialization.
* lisp/progmodes/js.el (js-mode): Call syntax-propertize rather than messing
around with font-lock.
* lisp/progmodes/etags.el (select-tags-table-mode):
Derive from special-mode.
* lisp/progmodes/octave-mod.el (octave-mode):
* lisp/progmodes/gdb-mi.el (gdb-inferior-io-mode, gdb-threads-mode)
(gdb-memory-mode, gdb-disassembly-mode, gdb-breakpoints-mode)
(gdb-frames-mode, gdb-locals-mode, gdb-registers-mode):
Let define-derived-mode do its job.
* lisp/progmodes/cpp.el (cpp-edit-mode-map):
Move initialization into declaration.
(cpp-edit-mode): Use define-derived-mode.
(cpp-edit-load): Use derived-mode-p.
* lisp/progmodes/mixal-mode.el (mixal-mode):
* lisp/progmodes/f90.el (f90-mode):
* lisp/progmodes/cfengine.el (cfengine-mode): Don't bother setting
require-final-newline since prog-mode does it already.
* lisp/progmodes/cc-cmds.el (c-update-modeline): Use match-string.
* lisp/progmodes/asm-mode.el (asm-mode-map): Fix menu setup.
* lisp/progmodes/antlr-mode.el: Require cc-mode upfront.
(antlr-mode-syntax-table, antlr-action-syntax-table): Initialize in
the declaration.
(antlr-directory-dependencies, antlr-show-makefile-rules):
Use derived-mode-p.
(antlr-language-option): Don't assume point-min==1.
(antlr-mode): Use define-derived-mode.
* lisp/progmodes/ada-mode.el: Use derived-mode-p.
(ada-mode): Use define-derived-mode.
Use hack-local-variables-hook.
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/progmodes/verilog-mode.el (verilog-mode):
* lisp/progmodes/vera-mode.el (vera-mode):
* lisp/progmodes/sql.el (sql-mode):
* lisp/progmodes/scheme.el (scheme-mode):
* lisp/progmodes/perl-mode.el (perl-mode):
* lisp/progmodes/octave-inf.el (inferior-octave-mode):
* lisp/progmodes/autoconf.el (autoconf-mode):
* lisp/progmodes/m4-mode.el (m4-mode):
* lisp/progmodes/inf-lisp.el (inferior-lisp-mode):
* lisp/progmodes/idlwave.el (idlwave-mode):
* lisp/progmodes/icon.el (icon-mode):
* lisp/progmodes/idlw-help.el (idlwave-help-mode):
* lisp/progmodes/dcl-mode.el (dcl-mode):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-electric-list-mode)
(ebrowse-member-mode, ebrowse-electric-position-mode):
Use define-derived-mode.
* lisp/progmodes/xscheme.el (xscheme-start)
(local-set-scheme-interaction-buffer, scheme-interaction-mode):
* lisp/progmodes/which-func.el (which-function):
* lisp/progmodes/vhdl-mode.el (vhdl-set-style):
* lisp/progmodes/verilog-mode.el (verilog-set-compile-command)
(verilog-modify-compile-command, verilog-error-regexp-add-xemacs)
(verilog-set-define, verilog-auto-reeval-locals):
* lisp/progmodes/sql.el (sql-product-font-lock, sql-interactive-mode):
* lisp/progmodes/simula.el (simula-mode):
* lisp/progmodes/scheme.el (scheme-mode-variables, dsssl-mode):
* lisp/progmodes/python.el (python-check, python-mode):
* lisp/progmodes/prolog.el (prolog-mode-variables):
* lisp/progmodes/gud.el (gud-tooltip-activate-mouse-motions):
* lisp/progmodes/ebrowse.el (ebrowse-view-file-other-frame):
* lisp/progmodes/delphi.el (delphi-mode):
* lisp/progmodes/cc-styles.el (c-setup-paragraph-variables):
* lisp/progmodes/cc-mode.el (c-basic-common-init, c-common-init)
(c-font-lock-init): Move make-local-variable to their setq.
* lisp/progmodes/xscheme.el (exit-scheme-interaction-mode)
(xscheme-enter-interaction-mode, xscheme-enter-debugger-mode)
(xscheme-debugger-mode-p, xscheme-send-string-1):
* lisp/progmodes/tcl.el (inferior-tcl-proc, tcl-current-word)
(tcl-load-file, tcl-restart-with-file):
* lisp/progmodes/ps-mode.el (ps-run-running):
* lisp/progmodes/gdb-mi.el (gud-watch, gdb-mouse-set-clear-breakpoint):
* lisp/progmodes/js.el (js--get-all-known-symbols):
* lisp/progmodes/inf-lisp.el (inferior-lisp-proc):
* lisp/progmodes/idlwave.el (idlwave-beginning-of-statement)
(idlwave-template, idlwave-update-buffer-routine-info)
(idlwave-update-current-buffer-info)
(idlwave-get-routine-info-from-buffers, idlwave-choose)
(idlwave-scan-class-info, idlwave-fix-keywords)
(idlwave-list-buffer-load-path-shadows):
* lisp/progmodes/idlw-toolbar.el (idlwave-toolbar, idlwave-toolbar-add)
(idlwave-toolbar-remove):
* lisp/progmodes/idlw-shell.el (idlwave-shell-save-and-action)
(idlwave-shell-file-name, idlwave-shell-electric-debug-all-off)
(idlwave-shell-menu-def):
* lisp/progmodes/idlw-complete-structtag.el
(idlwave-prepare-structure-tag-completion):
* lisp/progmodes/gud.el (gud-set-buffer):
* lisp/progmodes/f90.el (f90-backslash-not-special):
* lisp/progmodes/delphi.el (delphi-find-unit): Use derived-mode-p.
2010-12-10 20:00:25 +00:00
|
|
|
|
(derived-mode-p 'idlwave-mode)
|
2004-11-17 05:54:20 +00:00
|
|
|
|
"Toggle Electric Debug Mode"]
|
2000-01-03 14:23:13 +00:00
|
|
|
|
))
|
|
|
|
|
|
2000-02-04 10:08:49 +00:00
|
|
|
|
;; When the shell exits, arrange to remove the special toolbar everywhere.
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(add-hook 'idlwave-shell-cleanup-hook
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
#'idlwave-toolbar-remove-everywhere)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
);; End can define toolbar
|
|
|
|
|
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
(define-obsolete-function-alias 'idlwave-toolbar-add #'ignore "28.1")
|
|
|
|
|
|
|
|
|
|
(define-obsolete-function-alias 'idlwave-toolbar-remove #'ignore "28.1")
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
(defvar idlwave-shell-mode-map)
|
2000-06-20 12:49:47 +00:00
|
|
|
|
(defvar idlwave-mode-map)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(defvar idlwave-toolbar-visible nil)
|
|
|
|
|
(defun idlwave-toolbar-add-everywhere ()
|
|
|
|
|
"Add the toolbar in all appropriate buffers."
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(when (boundp 'idlwave-toolbar-is-possible)
|
|
|
|
|
|
|
|
|
|
;; Then add it to all existing buffers
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
;; For Emacs, add the key definitions to the mode maps
|
|
|
|
|
(mapc (lambda (x)
|
|
|
|
|
(let* ((icon (aref x 0))
|
|
|
|
|
(func (aref x 1))
|
|
|
|
|
(show (aref x 2))
|
|
|
|
|
(help (aref x 3))
|
|
|
|
|
(key (vector 'tool-bar func))
|
|
|
|
|
(def (list 'menu-item
|
|
|
|
|
""
|
|
|
|
|
func
|
|
|
|
|
:image (symbol-value icon)
|
|
|
|
|
:visible show
|
|
|
|
|
:help help)))
|
|
|
|
|
(define-key idlwave-mode-map key def)
|
|
|
|
|
(define-key idlwave-shell-mode-map key def)))
|
|
|
|
|
(reverse idlwave-toolbar))
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(setq idlwave-toolbar-visible t)))
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
(defun idlwave-toolbar-remove-everywhere ()
|
|
|
|
|
"Remove the toolbar in all appropriate buffers."
|
|
|
|
|
;; First make sure new buffers won't get the toolbar
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(when idlwave-toolbar-is-possible
|
|
|
|
|
;; Then remove it in all existing buffers.
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
;; For Emacs, remove the key definitions from the mode maps
|
|
|
|
|
(mapc (lambda (x)
|
|
|
|
|
(let* (;;(icon (aref x 0))
|
|
|
|
|
(func (aref x 1))
|
|
|
|
|
;;(show (aref x 2))
|
|
|
|
|
;;(help (aref x 3))
|
|
|
|
|
(key (vector 'tool-bar func)))
|
|
|
|
|
(define-key idlwave-mode-map key nil)
|
|
|
|
|
(define-key idlwave-shell-mode-map key nil)))
|
|
|
|
|
idlwave-toolbar)
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(setq idlwave-toolbar-visible nil)))
|
|
|
|
|
|
|
|
|
|
(defun idlwave-toolbar-toggle (&optional force-on)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
(interactive)
|
|
|
|
|
(if idlwave-toolbar-visible
|
2000-02-04 10:08:49 +00:00
|
|
|
|
(or force-on (idlwave-toolbar-remove-everywhere))
|
2000-06-20 12:49:47 +00:00
|
|
|
|
(idlwave-toolbar-add-everywhere))
|
* list/progmodes/idl*.el: Use lexical-binding
* lisp/progmodes/idlw-complete-structtag.el: Use lexical-binding.
* lisp/progmodes/idlw-help.el: Use lexical-binding.
Delete redundant `:group` arguments.
(idlwave-query-class, idlwave-force-class-query, idlw-help-name)
(idlw-help-kwd, idlw-help-link): Declare vars.
(idlwave-highlight-linked-completions): Remove unused var `class`.
(idlwave-help-find-in-doc-header): Remove unused var `header-re`.
* lisp/progmodes/idlw-shell.el (idlwave-shell-input-mode-magic):
Remove XEmacs-only code.
(idlwave-shell-filter, idlwave-shell-scan-for-state):
Use `functionp` since a function can also satisfy `listp`.
(idlwave-shell--mouse-examine): Rename from `idlwave-shell-mouse-examine`.
Make it a function, and simplify for Emacs≥22. Simplify calling convention
since all callers always immediately `funcall`d the result.
Update all callers.
(idlwave-default-mouse-track-event-is-with-button): Use `always`.
(idlwave-shell-filter-bp): Simplify a tiny bit.
* lisp/progmodes/idlw-toolbar.el: Use lexical-binding.
(idlwave-toolbar-add, idlwave-toolbar-remove)
(idlwave-toolbar-add-everywhere, idlwave-toolbar-remove-everywhere)
(idlwave-toolbar-toggle): Remove XEmacs-only code.
* lisp/progmodes/idlwave.el: Use lexical-binding.
(idlwave--dlet): New macro.
(<toplevel>): Use it.
(idlwave-keyword-abbrev): Turn it into a function.
(idlwave-code-abbrev): Delete macro.
(idlwave-mode-abbrev-table): Use `:enable-function` instead.
(idlwave-with-special-syntax): Delete macro; use `with-syntax-table`
instead in all callers.
(idlwave-action-and-binding): Use `alist-get` and replace `(lambda...)
with a proper closure. Change all callers to prefer passing a function
in the `cmd` argument.
(idlwave-fill-function): Delete constant var.
Replace its uses with its value (the symbol `auto-fill-function`).
(idlwave-mode): Set `normal-auto-fill-function` instead of the
cumbersome use of `idlwave-fill-function`. Tighten a regexp.
Don't set `imenu-create-index-function` to the value it should already have.
(idlwave-auto-fill-mode): Make it an obsolete alias for `auto-fill-mode`.
(idlwave-modify-abbrev): Rename from `idlwave-check-abbrev`.
Don't check `idlwave-quoted` since `:enable-function` did it for us already.
(idlwave--command-function): Rename from `idlwave-command-hook`
and make it hold a function rather than an expression.
(idlwave-command-hook, idlwave-modify-abbrev): Adjust accordingly.
(idlwave-show-begin-check): Don't check `idlwave-quoted` since
`:enable-function` did it for us already.
(idlwave-do-action): Use `functionp` since a function can also satisfy `listp`
(idlwave-new-sintern-type): Make it a macro, so we don't need to
`declare-function` for the functions it defines.
(idlwave--class-selector, idlwave--type-selector)
(idlwave--method-selector, idlwave--super-classes): Rename those vars
by adding the `idlwave--` prefix. Adjust all uses.
(idlwave-complete-functions): Rename from `idlwave-complete-special`.
(idlwave-call-special): Declare obsolete. Change all callers to use
`run-hook-with-args-until-success` instead.
(idlwave-complete-filename): Use `dlet`.
(idlwave-rinfo-assq-any-class): Remove unused var `class`.
(idlwave-determine-class-functions): Rename from
`idlwave-determine-class-special`; fix docstring since the functions
are called with only one argument.
(idlwave--complete-after-success-function): Rename from
`idlwave-complete-after-success-form` and make it hold a function.
Adjust all users.
(idlwave--complete-after-success-force-function): Rename from
`idlwave-complete-after-success-form-force` and make it hold a function.
Adjust all users.
(idlwave-attach-classes): Remove always-t variable `do-dots`.
(idlwave-local-value): Use `local-variable-p` and `buffer-local-value`
to avoid `with-current-buffer`.
(idlwave-default-choose-completion): Comment out (unused and calls
a function that doesn't exist).
(idlwave-shell-filter-sysvars): Remove unused vars `type`, `name`, and `class`
(idlwave-fix-module-if-obj_new): Remove unused var `name`.
(idlwave-fix-keywords): Bind `idlwave--super-classes` via `let` than
via the function's argument.
(idlwave-twin-class, idlwave-twin-name): Move before first use.
(idlwave-study-twins): Remove stealth/redundant `type` variable.
(idlwave-routine-entry-compare-twins): Remove unused var `type`.
(idlwave-path-alist-add-flag): Avoid `add-to-list` on a local var.
(idlwave-list-abbrevs): Simplify a tiny bit.
2021-03-24 21:11:05 +00:00
|
|
|
|
;; On Emacs, redraw the frame to make sure the Toolbar is updated.
|
|
|
|
|
(redraw-frame))
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
(provide 'idlw-toolbar)
|
2000-01-05 08:52:21 +00:00
|
|
|
|
(provide 'idlwave-toolbar)
|
2000-01-03 14:23:13 +00:00
|
|
|
|
|
|
|
|
|
;;; idlw-toolbar.el ends here
|