Mercurial > emacs
annotate oldXMenu/DelSel.c @ 55434:f88632e54afb
2004-05-08 John Wiegley <johnw@newartisans.com>
* iswitchb.el (iswitchb-use-virtual-buffers): Added support for
"virtual buffers" (off by default), which makes it possible to
switch to the buffers of recently files. When a buffer name
search fails, and this option is on, iswitchb will look at the
list of recently visited files, and permit matching against those
names. When the user hits RET on a match, it will revisit that
file.
(iswitchb-read-buffer): Added two optional arguments, which makes
isearchb.el possible.
(iswitchb-completions, iswitchb-set-matches, iswitchb-prev-match,
iswitchb-next-match): Added support for virtual buffers.
author | John Wiegley <johnw@newartisans.com> |
---|---|
date | Sat, 08 May 2004 13:00:52 +0000 |
parents | e8824c4f5f7e |
children | 3861ff8f4bf1 8e5779acd195 |
rev | line source |
---|---|
25858 | 1 #include "copyright.h" |
2 | |
3 /* Copyright Massachusetts Institute of Technology 1985 */ | |
4 | |
5 /* | |
6 * XMenu: MIT Project Athena, X Window system menu package | |
7 * | |
8 * XMenuDeleteSelection - Deletes a selection from an XMenu object. | |
9 * | |
10 * Author: Tony Della Fera, DEC | |
11 * 20-Nov-85 | |
12 * | |
13 */ | |
14 | |
15 #include "XMenuInt.h" | |
16 | |
17 int | |
18 XMenuDeleteSelection(display, menu, p_num, s_num) | |
19 register Display *display; /* Previously opened display. */ | |
20 register XMenu *menu; /* Menu object to be modified. */ | |
21 register int p_num; /* Pane number to be deleted. */ | |
22 register int s_num; /* Selection 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. */ | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
26 |
25858 | 27 /* |
28 * Find the right pane. | |
29 */ | |
30 p_ptr = _XMGetPanePtr(menu, p_num); | |
31 if (p_ptr == NULL) return(XM_FAILURE); | |
32 | |
33 /* | |
34 * Find the right selection. | |
35 */ | |
36 s_ptr = _XMGetSelectionPtr(p_ptr, s_num); | |
37 if (s_ptr == NULL) return(XM_FAILURE); | |
38 | |
39 /* | |
40 * Remove the selection from the association table. | |
41 */ | |
42 XDeleteAssoc(display, menu->assoc_tab, s_ptr->window); | |
43 | |
44 /* | |
45 * Remove the selection from the parent pane's selection | |
46 * list and update the selection count. | |
47 */ | |
48 emacs_remque(s_ptr); | |
49 p_ptr->s_count--; | |
50 | |
51 /* | |
52 * Destroy the selection transparency. | |
53 */ | |
54 if (s_ptr->window) XDestroyWindow(display, s_ptr->window); | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
55 |
25858 | 56 /* |
57 * Free the selection's XMSelect structure. | |
58 */ | |
59 free(s_ptr); | |
60 | |
61 /* | |
62 * Schedule a recompute. | |
63 */ | |
64 menu->recompute = 1; | |
65 | |
66 /* | |
67 * Return the selection number just deleted. | |
68 */ | |
69 _XMErrorCode = XME_NO_ERROR; | |
70 return(s_num); | |
71 } | |
52401 | 72 |
73 /* arch-tag: 24ca2bc7-8a37-471a-8095-e6363fc1ed10 | |
74 (do not change this comment) */ |