annotate lwlib/xlwmenuP.h @ 35926:d2997845573f

(hi-lock-mode): Toggling hi-lock-mode now affects all buffers. When hi-lock turned on rather than only checking current buffer for regexps, all buffers are checked. Moved activation of font-lock to hi-lock-refontify. When font-lock turned off rather than removing added highlighting just in current buffer, remove it in all buffers. Changed edit menu text from "Automatic Highlighting" to "Regexp Highlighting" Documentation for highlighting phrases, minor documentation changes. (hi-lock-set-file-patterns): Execute only if there are new or existing file patterns. (hi-lock-refontify): Assume font-lock-fontify-buffer will first unfontify and, if a support mode is active, will not refontify the whole buffer. If necessary, turn on font lock. (Removed font-lock-unfontify and font-lock support-mode-specific calls, such as lazy-lock-fontify-window.) (hi-lock-find-patterns): Do not turn on hi-lock-mode even if patterns are found. Not useful now since find-file-hook is removed if hi-lock is off, but may be needed for per-buffer hi-lock activation. (hi-lock-face-phrase-buffer): New function. Also added related menu item and keybinding. (highlight-phrase): New alias, to hi-lock-face-phrase-buffer. (hi-lock-process-phrase): New function. (hi-lock-line-face-buffer): Doc fixes. (hi-lock-face-buffer): Doc fixes. (hi-lock-unface-buffer): Doc fixes.
author Gerd Moellmann <gerd@gnu.org>
date Tue, 06 Feb 2001 15:43:37 +0000
parents bb36becbd66b
children 762469b26903
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 #ifndef _XlwMenuP_h
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2 #define _XlwMenuP_h
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4 #include "xlwmenu.h"
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5 #include <X11/CoreP.h>
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
7 /* Elements in the stack arrays. */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8 typedef struct _window_state
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
9 {
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10 Window window;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11 Position x;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 Position y;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13 Dimension width;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
14 Dimension height;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
15 Dimension label_width;
25033
584c34c7cf53 (_window_state): Add button_width.
Gerd Moellmann <gerd@gnu.org>
parents: 7360
diff changeset
16
584c34c7cf53 (_window_state): Add button_width.
Gerd Moellmann <gerd@gnu.org>
parents: 7360
diff changeset
17 /* Width of toggle buttons or radio buttons. */
584c34c7cf53 (_window_state): Add button_width.
Gerd Moellmann <gerd@gnu.org>
parents: 7360
diff changeset
18 Dimension button_width;
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19 } window_state;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22 /* New fields for the XlwMenu widget instance record */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23 typedef struct _XlwMenu_part
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24 {
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25 /* slots set by the resources */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26 XFontStruct* font;
7360
cfb65c58eb9a entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 7359
diff changeset
27 Pixel foreground;
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 Pixel button_foreground;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29 Dimension margin;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
30 Dimension horizontal_spacing;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31 Dimension vertical_spacing;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32 Dimension arrow_spacing;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 Dimension shadow_thickness;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34 Pixel top_shadow_color;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
35 Pixel bottom_shadow_color;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
36 Pixmap top_shadow_pixmap;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
37 Pixmap bottom_shadow_pixmap;
7360
cfb65c58eb9a entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 7359
diff changeset
38 Cursor cursor_shape;
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
39 XtCallbackList open;
27340
1d84a7873d7c (_XlwMenu_part): Add `highlight' callback list.
Gerd Moellmann <gerd@gnu.org>
parents: 25033
diff changeset
40 XtCallbackList select, highlight;
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
41 widget_value* contents;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
42 int horizontal;
29699
bb36becbd66b (_XlwMenu_part): Add free_top_shadow_color_p and
Gerd Moellmann <gerd@gnu.org>
parents: 27340
diff changeset
43
bb36becbd66b (_XlwMenu_part): Add free_top_shadow_color_p and
Gerd Moellmann <gerd@gnu.org>
parents: 27340
diff changeset
44 /* True means top_shadow_color and/or bottom_shadow_color must be freed. */
bb36becbd66b (_XlwMenu_part): Add free_top_shadow_color_p and
Gerd Moellmann <gerd@gnu.org>
parents: 27340
diff changeset
45 unsigned free_top_shadow_color_p : 1;
bb36becbd66b (_XlwMenu_part): Add free_top_shadow_color_p and
Gerd Moellmann <gerd@gnu.org>
parents: 27340
diff changeset
46 unsigned free_bottom_shadow_color_p : 1;
7359
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
47
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
48 /* State of the XlwMenu */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
49 int old_depth;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
50 widget_value** old_stack;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
51 int old_stack_length;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
52
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
53 /* New state after the user moved */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
54 int new_depth;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
55 widget_value** new_stack;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
56 int new_stack_length;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
57
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
58 /* Window resources */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
59 window_state* windows;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
60 int windows_length;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
61
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
62 /* Internal part, set by the XlwMenu */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
63 GC foreground_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
64 GC button_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
65 GC background_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
66 GC inactive_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
67 GC inactive_button_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
68 GC shadow_top_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
69 GC shadow_bottom_gc;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
70 Cursor cursor;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
71 Boolean popped_up;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
72 Pixmap gray_pixmap;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
73 } XlwMenuPart;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
74
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
75 /* Full instance record declaration */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
76 typedef struct _XlwMenuRec
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
77 {
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
78 CorePart core;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
79 XlwMenuPart menu;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
80 } XlwMenuRec;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
81
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
82 /* New fields for the XlwMenu widget class record */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 typedef struct
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
84 {
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
85 int dummy;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
86 } XlwMenuClassPart;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
87
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
88 /* Full class record declaration. */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
89 typedef struct _XlwMenuClassRec
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
90 {
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
91 CoreClassPart core_class;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
92 XlwMenuClassPart menu_class;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
93 } XlwMenuClassRec;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
94
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
95 /* Class pointer. */
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
96 extern XlwMenuClassRec xlwMenuClassRec;
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
97
6ab8e21b9b7c Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
98 #endif /* _XlwMenuP_h */