Mercurial > emacs
annotate oldXMenu/DelPane.c @ 99492:ee792794d888
(isearch-search-fun): Compare the length of the
current search string with the length of the string from the
previous search state to detect the situation when the user
adds or removes characters in the search string.
Use word-search-forward-lax and word-search-backward-lax in this
case, and otherwise word-search-forward and word-search-backward.
author | Juri Linkov <juri@jurta.org> |
---|---|
date | Tue, 11 Nov 2008 19:43:09 +0000 |
parents | fec5e03aaf59 |
children | edf631bdbb7a ec58e5c426ef 5cc91198ffb2 |
rev | line source |
---|---|
76174
fec5e03aaf59
Remove FSF copyright since file does not differ significantly from X11
Glenn Morris <rgm@gnu.org>
parents:
75348
diff
changeset
|
1 /* Copyright Massachusetts Institute of Technology 1985 */ |
fec5e03aaf59
Remove FSF copyright since file does not differ significantly from X11
Glenn Morris <rgm@gnu.org>
parents:
75348
diff
changeset
|
2 |
25858 | 3 #include "copyright.h" |
4 | |
5 | |
6 /* | |
7 * XMenu: MIT Project Athena, X Window system menu package | |
8 * | |
9 * XMenuDeletePane - Deletes a pane from an XMenu object. | |
10 * | |
11 * Author: Tony Della Fera, DEC | |
12 * 20-Nov-85 | |
13 * | |
14 */ | |
15 | |
16 #include "XMenuInt.h" | |
17 | |
18 int | |
19 XMenuDeletePane(display, menu, p_num) | |
20 register Display *display; /* Previously opened display */ | |
21 register XMenu *menu; /* Menu object to be modified. */ | |
22 register int p_num; /* Pane number to be deleted. */ | |
23 { | |
24 register XMPane *p_ptr; /* Pointer to pane being deleted. */ | |
25 register XMSelect *s_ptr; /* Pointer to selections being deleted. */ | |
26 register XMSelect *s_next; /* Pointer to next selection to be deleted. */ | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
27 |
25858 | 28 /* |
29 * Find the right pane. | |
30 */ | |
31 p_ptr = _XMGetPanePtr(menu, p_num); | |
32 if (p_ptr == NULL) return(XM_FAILURE); | |
33 | |
34 /* | |
35 * Remove the pane from the association table. | |
36 */ | |
37 XDeleteAssoc(display, menu->assoc_tab, p_ptr->window); | |
38 | |
39 /* | |
40 * Remove the pane from the pane list and update | |
41 * the pane count. | |
42 */ | |
43 emacs_remque(p_ptr); | |
44 menu->p_count--; | |
45 | |
46 /* | |
47 * Remove all the selections in the pane from the | |
48 * association table and free their XMSelect structures. | |
49 */ | |
50 for ( | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
51 s_ptr = p_ptr->s_list->next; |
25858 | 52 s_ptr != p_ptr->s_list; |
53 s_ptr = s_next | |
54 ) { | |
55 XDeleteAssoc(display, menu->assoc_tab, s_ptr->window); | |
56 s_next = s_ptr->next; | |
57 free(s_ptr); | |
58 } | |
59 free(p_ptr->s_list); | |
60 | |
61 if (p_ptr->window) { | |
62 /* | |
63 * Destroy the selection transparencies. | |
64 */ | |
65 XDestroySubwindows(display, p_ptr->window); | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
66 |
25858 | 67 /* |
68 * Destroy the pane window. | |
69 */ | |
70 XDestroyWindow(display, p_ptr->window); | |
71 } | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
72 |
25858 | 73 /* |
74 * Free the pane's XMPane structure. | |
75 */ | |
76 free(p_ptr); | |
77 | |
78 /* | |
79 * Schedule a recompute. | |
80 */ | |
81 menu->recompute = 1; | |
82 | |
83 /* | |
84 * Return the pane number just deleted. | |
85 */ | |
86 _XMErrorCode = XME_NO_ERROR; | |
87 return(p_num); | |
88 } | |
52401 | 89 |
90 /* arch-tag: 32a5bfd4-4bac-4090-bb53-844110f4908e | |
91 (do not change this comment) */ |