annotate lisp/cdl.el @ 6058:662b9cd767fe

(Fx_popup_menu): Allow t as position, meaning use mouse pos. Allow nil as position, meaning just precompute equiv-key data. Mouse events have coords in pixel units. (menu_item_equiv_key): Cached equiv-key data is a sublist. Most of file rewritten. (menu_items, menu_items_*): New variables. (MENU_ITEMS_*): New macros. (init_menu_items, discard_menu_items, push_menu_pane, push_menu_item) (finish_menu_items): New functions. (menu_item_enabled_p): New function. (keymap_panes, single_keymap_panes): Major rewrite; most args changed. (list_of_panes, list_of_items): Major rewrite; most args changed. (Fx_popup_menu): Major rewrite. Now independent of display mechanism. No more conditionals here. (set_menu_items, free_menu_items): Functions deleted. (xmenu_show): Both versions rewritten to work from menu_items and to do all the conditionalized things that were in Fx_popup_menu. (unread_menu_bar_button, other_menu_bar_item_p): New functions. (check_mouse_other_menu_bar): New function.
author Richard M. Stallman <rms@gnu.org>
date Thu, 24 Feb 1994 08:07:16 +0000
parents 56713fbab9ad
children 84acc3adcd63
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4865
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 ;;; cdl.el -- Common Data Language (CDL) utility functions for Gnu Emacs
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3 ;; Copyright (C) 1993 Free Software Foundation, Inc.
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4
4866
56713fbab9ad entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4865
diff changeset
5 ;; Author: ATAE@spva.physics.imperial.ac.uk (Ata Etemadi)
56713fbab9ad entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4865
diff changeset
6 ;; Keywords: data
56713fbab9ad entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 4865
diff changeset
7
4865
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
9
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13 ;; any later version.
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
14
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
18 ;; GNU General Public License for more details.
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24 ;;; Code:
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26 (defun cdl-get-file (filename)
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27 "Run file through ncdump and insert result into buffer after point."
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 (interactive "fCDF file: ")
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29 (message "ncdump in progress...")
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
30 (let ((start (point)))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31 (call-process "ncdump" nil t nil (expand-file-name filename))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32 (goto-char start))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 (message "ncdump in progress...done"))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
35 (defun cdl-put-region (filename start end)
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
36 "Run region through ncgen and write results into a file."
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
37 (interactive "FNew CDF file: \nr")
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
38 (message "ncgen in progress...")
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
39 (call-process-region start end "ncgen"
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
40 nil nil nil "-o" (expand-file-name filename))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
41 (message "ncgen in progress...done"))
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
42
4baa7107909b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
43 ;;; cdl.el ends here.