Mercurial > emacs
comparison lisp/emacs-lisp/chart.el @ 112213:6e613fbf73d7
Use run-mode-hooks for major mode hooks.
* lisp/textmodes/reftex-toc.el (reftex-toc-mode-map):
Rename from reftex-toc-map.
(reftex-toc-mode): Use define-derived-mode.
* lisp/textmodes/reftex-sel.el (reftex-select-shared-map): New map.
(reftex-select-label-mode-map, reftex-select-bib-mode-map):
Rename from reftex-select-(label|bib)-map. Move init into declaration.
(reftex-select-label-mode, reftex-select-bib-mode):
Use define-derived-mode.
* lisp/textmodes/reftex-index.el (reftex-index-phrases-mode-map)
(reftex-index-mode-map): Rename from reftex-index(-phrases)-map.
Move init into delcaration.
(reftex-index-mode, reftex-index-phrases-mode):
Use define-derived-mode.
* lisp/speedbar.el (speedbar-mode-syntax-table): Renaqme from
speedbar-syntax-table. Move init into declaration.
(speedbar-mode-map): Rename from speedbar-key-map.
Move init into declaration.
(speedbar-file-key-map): Move init into declaration.
(speedbar-mode): Use define-derived-mode.
* lisp/recentf.el (recentf-mode): Don't run hook (or message) redundantly.
* lisp/net/rcirc.el (rcirc-mode): Use run-mode-hooks.
* lisp/emacs-lisp/chart.el (chart-mode-map): Rename from chart-map.
(chart-face-list): Move initialization into declaration.
(chart-mode): Use define-derived-mode.
* lisp/calculator.el (calculator-mode-map): Move init into declaration.
(calculator-mode): Use define-derived-mode.
* lisp/cedet/srecode/srt-mode.el (srecode-template-mode):
Use define-derived-mode.
* lisp/cedet/semantic/symref/list.el (semantic-symref-results-mode):
Use run-mode-hooks.
* lisp/erc/erc.el (erc-mode):
* lisp/erc/erc-dcc.el (erc-dcc-chat-mode): Use define-derived-mode.
* lisp/org/org-remember.el (org-remember-mode):
* lisp/org/org-capture.el (org-capture-mode): Don't run hook redundantly.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 13 Jan 2011 18:14:30 -0500 |
parents | 05dc9dca8729 |
children |
comparison
equal
deleted
inserted
replaced
112212:966cc18ff805 | 112213:6e613fbf73d7 |
---|---|
1 ;;; chart.el --- Draw charts (bar charts, etc) | 1 ;;; chart.el --- Draw charts (bar charts, etc) |
2 | 2 |
3 ;; Copyright (C) 1996, 1998, 1999, 2001, 2004, 2005, 2007, 2008, 2009, | 3 ;; Copyright (C) 1996, 1998, 1999, 2001, 2004, 2005, 2007, 2008, 2009, |
4 ;; 2010 Free Software Foundation, Inc. | 4 ;; 2010, 2011 Free Software Foundation, Inc. |
5 | 5 |
6 ;; Author: Eric M. Ludlam <zappo@gnu.org> | 6 ;; Author: Eric M. Ludlam <zappo@gnu.org> |
7 ;; Version: 0.2 | 7 ;; Version: 0.2 |
8 ;; Keywords: OO, chart, graph | 8 ;; Keywords: OO, chart, graph |
9 | 9 |
60 ;; with all the bitmaps you want to use. | 60 ;; with all the bitmaps you want to use. |
61 | 61 |
62 (require 'eieio) | 62 (require 'eieio) |
63 | 63 |
64 ;;; Code: | 64 ;;; Code: |
65 (defvar chart-map (make-sparse-keymap) "Keymap used in chart mode.") | 65 (defvar chart-mode-map (make-sparse-keymap) "Keymap used in chart mode.") |
66 (define-obsolete-variable-alias 'chart-map 'chart-mode-map "24.1") | |
66 | 67 |
67 (defvar chart-local-object nil | 68 (defvar chart-local-object nil |
68 "Local variable containing the locally displayed chart object.") | 69 "Local variable containing the locally displayed chart object.") |
69 (make-variable-buffer-local 'chart-local-object) | 70 (make-variable-buffer-local 'chart-local-object) |
70 | |
71 (defvar chart-face-list nil | |
72 "Faces used to colorize charts. | |
73 List is limited currently, which is ok since you really can't display | |
74 too much in text characters anyways.") | |
75 | 71 |
76 (defvar chart-face-color-list '("red" "green" "blue" | 72 (defvar chart-face-color-list '("red" "green" "blue" |
77 "cyan" "yellow" "purple") | 73 "cyan" "yellow" "purple") |
78 "Colors to use when generating `chart-face-list'. | 74 "Colors to use when generating `chart-face-list'. |
79 Colors will be the background color.") | 75 Colors will be the background color.") |
88 (defcustom chart-face-use-pixmaps nil | 84 (defcustom chart-face-use-pixmaps nil |
89 "*Non-nil to use fancy pixmaps in the background of chart face colors." | 85 "*Non-nil to use fancy pixmaps in the background of chart face colors." |
90 :group 'eieio | 86 :group 'eieio |
91 :type 'boolean) | 87 :type 'boolean) |
92 | 88 |
93 (if (and (if (fboundp 'display-color-p) | 89 (defvar chart-face-list |
94 (display-color-p) | 90 (if (if (fboundp 'display-color-p) |
95 window-system) | 91 (display-color-p) |
96 (not chart-face-list)) | 92 window-system) |
97 (let ((cl chart-face-color-list) | 93 (let ((cl chart-face-color-list) |
98 (pl chart-face-pixmap-list) | 94 (pl chart-face-pixmap-list) |
99 nf) | 95 (faces ()) |
100 (while cl | 96 nf) |
101 (setq nf (make-face (intern (concat "chart-" (car cl) "-" (car pl))))) | 97 (while cl |
102 (if (condition-case nil | 98 (setq nf (make-face |
103 (> (x-display-color-cells) 4) | 99 (intern (concat "chart-" (car cl) "-" (car pl))))) |
104 (error t)) | 100 (set-face-background nf (if (condition-case nil |
105 (set-face-background nf (car cl)) | 101 (> (x-display-color-cells) 4) |
106 (set-face-background nf "white")) | 102 (error t)) |
107 (set-face-foreground nf "black") | 103 (car cl) |
108 (if (and chart-face-use-pixmaps | 104 "white")) |
109 pl | 105 (set-face-foreground nf "black") |
110 (fboundp 'set-face-background-pixmap)) | 106 (if (and chart-face-use-pixmaps |
111 (condition-case nil | 107 pl |
112 (set-face-background-pixmap nf (car pl)) | 108 (fboundp 'set-face-background-pixmap)) |
113 (error (message "Cannot set background pixmap %s" (car pl))))) | 109 (condition-case nil |
114 (setq chart-face-list (cons nf chart-face-list)) | 110 (set-face-background-pixmap nf (car pl)) |
115 (setq cl (cdr cl) | 111 (error (message "Cannot set background pixmap %s" (car pl))))) |
116 pl (cdr pl))))) | 112 (push nf faces) |
117 | 113 (setq cl (cdr cl) |
118 (defun chart-mode () | 114 pl (cdr pl))) |
115 faces)) | |
116 "Faces used to colorize charts. | |
117 List is limited currently, which is ok since you really can't display | |
118 too much in text characters anyways.") | |
119 | |
120 (define-derived-mode chart-mode fundamental-mode "CHART" | |
119 "Define a mode in Emacs for displaying a chart." | 121 "Define a mode in Emacs for displaying a chart." |
120 (kill-all-local-variables) | |
121 (use-local-map chart-map) | |
122 (setq major-mode 'chart-mode | |
123 mode-name "CHART") | |
124 (buffer-disable-undo) | 122 (buffer-disable-undo) |
125 (set (make-local-variable 'font-lock-global-modes) nil) | 123 (set (make-local-variable 'font-lock-global-modes) nil) |
126 (font-lock-mode -1) | 124 (font-lock-mode -1) ;Isn't it off already? --Stef |
127 (run-hooks 'chart-mode-hook) | |
128 ) | 125 ) |
129 | 126 |
130 (defun chart-new-buffer (obj) | 127 (defun chart-new-buffer (obj) |
131 "Create a new buffer NAME in which the chart OBJ is displayed. | 128 "Create a new buffer NAME in which the chart OBJ is displayed. |
132 Returns the newly created buffer." | 129 Returns the newly created buffer." |