annotate lisp/hyperbole/hui-epV4-b.el @ 205:92f8ad5d0d3f r20-4b1

Import from CVS: tag r20-4b1
author cvs
date Mon, 13 Aug 2007 10:02:46 +0200
parents 376386a54a3c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 ;;!emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 ;; FILE: hui-epV4-b.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 ;; SUMMARY: Support color and flashing of hyper-buttons under Epoch V4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 ;; USAGE: Epoch Lisp Library
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 ;; KEYWORDS: faces, hypermedia
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 ;; AUTHOR: Bob Weiner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 ;; ORG: Brown U.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 ;; ORIG-DATE: 27-Apr-91 at 05:37:10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 ;; LAST-MOD: 14-Apr-95 at 16:10:55 by Bob Weiner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 ;; This file is part of Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;; It is for use with Epoch, a modified version of GNU Emacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 ;; Available for use and distribution under the same terms as GNU Emacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;; Copyright (C) 1991-1995, Free Software Foundation, Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 ;; Developed with support from Motorola Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;; DESCRIPTION:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 ;; Requires Epoch 4.0a or greater.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;; This is truly prototype code.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 ;; DESCRIP-END.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 (if (and (boundp 'epoch::version) (stringp epoch::version)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 (or noninteractive (not (string-lessp epoch::version "Epoch 4"))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 (error "(hui-epV4-b.el): Load only under Epoch V4 or higher."))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 (load "button")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 (require 'hui-ep-but)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 (defun hproperty:background ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 "Returns default background color for selected frame."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 (epoch::background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 (defun hproperty:foreground ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 "Returns default foreground color for selected frame."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 (epoch::foreground))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 ;;; Public variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 (defvar hproperty:item-highlight-color (foreground)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 "Color with which to highlight list/menu selections.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 Call (hproperty:set-item-highlight <color>) to change value.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 ;;; Public functions
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 (defun hproperty:but-create (&optional start-delim end-delim regexp-match)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58 "Mark all hyper-buttons in buffer as Epoch buttons, for later highlighting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 Will use optional strings START-DELIM and END-DELIM instead of default values.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 expression which matches an entire button string.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62 If REGEXP-MATCH is non-nil, only buttons matching this argument are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 highlighted."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 ;; Clear out Hyperbole button zones.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 (hproperty:but-clear)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 ;; Then recreate them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 (hproperty:but-create-all start-delim end-delim regexp-match))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 (defun hproperty:but-clear ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70 "Delete all Hyperbole button zones from current buffer."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 (interactive)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 (mapcar (function (lambda (zone)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 (if (eq (epoch::zone-style zone) hproperty:but)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 (epoch::delete-zone zone))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 (epoch::zone-list)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
76
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77 (defun hproperty:cycle-but-color (&optional color)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 "Switches button color to optional COLOR name or next item referenced by hproperty:color-ptr."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79 (interactive "sHyperbole button color: ")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 (if (<= (epoch::number-of-colors) 2)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
81 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
82 (if color (setq hproperty:color-ptr nil))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
83 (epoch::set-style-foreground
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
84 hproperty:but
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85 (or color (car (hproperty:list-cycle
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 hproperty:color-ptr hproperty:good-colors))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 (hproperty:set-flash-color)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88 (redraw-display)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89 t))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 (defun hproperty:but-flash ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92 "Flash a Hyperbole button at point to indicate selection, when using Epoch."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93 (interactive)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 (let ((ibut) (prev)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95 (start (hattr:get 'hbut:current 'lbl-start))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96 (end (hattr:get 'hbut:current 'lbl-end))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 (b) (a))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 (if (and start end (setq prev (epoch::button-at start)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
99 ibut t))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100 (progn (if (not prev) (hproperty:but-add start end hproperty:but))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101 (setq b (and start (epoch::button-at start))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102 (setq b (button-at (point))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 (if (setq a (and (epoch::buttonp b) (epoch::button-style b)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105 (epoch::set-button-style b hproperty:flash-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 (epoch::redisplay-screen)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 ;; Delay before redraw button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108 (let ((i 0)) (while (< i hproperty:but-flash-time) (setq i (1+ i))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109 (epoch::set-button-style b a)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110 (epoch::redisplay-screen)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 (if (and ibut (not prev)) (hproperty:but-delete start))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 (defun hproperty:set-item-highlight (&optional background foreground)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 "Setup or reset item highlight style using optional BACKGROUND and FOREGROUND."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 (make-local-variable 'hproperty:item-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 (if (stringp background) (setq hproperty:item-highlight-color background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 (if (not hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
120 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
121 (setq hproperty:highlight-face (make-style))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 (set-style-foreground hproperty:highlight-face (background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 (set-style-underline hproperty:highlight-face nil)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 (let ((update-rolo-highlight-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126 (and (boundp 'rolo-highlight-face) (stylep rolo-highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127 (or (null (style-foreground rolo-highlight-face))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
128 (equal (style-foreground hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
129 (style-foreground rolo-highlight-face))))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
130 (if (not (equal (style-background hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
131 (get-color hproperty:item-highlight-color)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132 (set-style-background hproperty:highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
133 hproperty:item-highlight-color))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
134 (and background (not (equal (style-background hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
135 (get-color background)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
136 (set-style-background hproperty:highlight-face background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
137 (and foreground (not (equal (style-foreground hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
138 (get-color foreground)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
139 (set-style-foreground hproperty:highlight-face foreground))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
140 (setq hproperty:item-face hproperty:highlight-face)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
141 (if update-rolo-highlight-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
142 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
143 (set-style-background rolo-highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
144 (style-background hproperty:highlight-face))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145 (set-style-foreground rolo-highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 (style-foreground hproperty:highlight-face))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 (set-style-font rolo-highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
148 (style-font hproperty:highlight-face))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
149 (set-style-underline rolo-highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
150 (style-underline hproperty:highlight-face))))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 (defun hproperty:select-item (&optional pnt)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
153 "Select item in current buffer at optional position PNT using hproperty:item-face."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 (or hproperty:item-button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155 (setq hproperty:item-button (add-button (point) (point) hproperty:item-face)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156 (if pnt (goto-char pnt))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157 (skip-chars-forward " \t")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 (skip-chars-backward "^ \t\n")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
159 (let ((start (point)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
160 (save-excursion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161 (skip-chars-forward "^ \t\n")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162 (move-button hproperty:item-button start (point))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
163 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
164 (epoch::redisplay-screen)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
165 )
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
167 (defun hproperty:select-line (&optional pnt)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 "Select line in current buffer at optional position PNT using hproperty:item-face."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169 (or hproperty:item-button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170 (setq hproperty:item-button (add-button (point) (point) hproperty:item-face)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171 (if pnt (goto-char pnt))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 (save-excursion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173 (beginning-of-line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174 (move-button hproperty:item-button (point) (progn (end-of-line) (point)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 )
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 (epoch::redisplay-screen)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177 )
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 ;;; Private functions
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 (defun hproperty:set-flash-color ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
184 "Set button flashing colors based upon current color set."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
185 (if (<= (epoch::number-of-colors) 2)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
186 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
187 (epoch::set-style-background hproperty:flash-face (hproperty:but-color))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188 (epoch::set-style-foreground hproperty:flash-face (hproperty:background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 ;;; Private variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
194
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
195 (defvar hproperty:but (epoch::make-style) "Style for hyper-buttons.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196 (epoch::set-style-foreground hproperty:but (hproperty:but-color))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
197 (epoch::set-style-background hproperty:but (hproperty:background))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
198
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
199 (defvar hproperty:flash-face (epoch::make-style)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
200 "Style for flashing hyper-buttons.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
201 (hproperty:set-flash-color)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
202
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
203 (defvar hproperty:item-button nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
204 "Button used to highlight an item in a listing buffer.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
205 (make-variable-buffer-local 'hproperty:item-button)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
206 (defvar hproperty:item-face nil "Style for item marking.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
207 (defvar hproperty:highlight-face nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
208 "Item highlighting face. Use (hproperty:set-item-highlight) to set.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209 (if hproperty:highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
211 ;; Reverse foreground and background colors for default block-style highlighting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
212 (hproperty:set-item-highlight (hproperty:foreground) (hproperty:background)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
214 (provide 'hui-epV4-b)