Mercurial > emacs
annotate oldXMenu/Destroy.c @ 95948:d55ec23f052d
*** empty log message ***
| author | Glenn Morris <rgm@gnu.org> |
|---|---|
| date | Sun, 15 Jun 2008 02:53:17 +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 * XMenuDestroy - Free all resources associated with and XMenu. | |
| 10 * | |
| 11 * Author: Tony Della Fera, DEC | |
| 12 * August, 1985 | |
| 13 * | |
| 14 */ | |
| 15 | |
| 16 #include "XMenuInt.h" | |
| 17 | |
| 18 XMenuDestroy(display, menu) | |
| 19 Display *display; | |
| 20 register XMenu *menu; /* Menu object to destroy. */ | |
| 21 { | |
| 22 register XMPane *p_ptr; /* Pointer to the current pane. */ | |
| 23 register XMPane *p_next; /* Pointer to the next pane. */ | |
| 24 register XMSelect *s_ptr; /* Pointer to the current selection. */ | |
| 25 register XMSelect *s_next; /* Pointer to the next selection. */ | |
| 26 | |
| 27 /* | |
| 28 * Destroy the selection and pane X windows and free | |
| 29 * their corresponding XMWindows. | |
| 30 */ | |
| 31 for ( | |
| 32 p_ptr = menu->p_list->next; | |
| 33 p_ptr != menu->p_list; | |
| 34 p_ptr = p_next | |
| 35 ) { | |
| 36 for ( | |
| 37 s_ptr = p_ptr->s_list->next; | |
| 38 s_ptr != p_ptr->s_list; | |
| 39 s_ptr = s_next | |
| 40 ) { | |
| 41 s_next = s_ptr->next; | |
| 42 free(s_ptr); | |
| 43 } | |
| 44 if (p_ptr->window) { | |
| 45 XDestroySubwindows(display, p_ptr->window); | |
| 46 XDestroyWindow(display, p_ptr->window); | |
| 47 } | |
| 48 p_next = p_ptr->next; | |
| 49 free(p_ptr); | |
| 50 } | |
| 51 | |
| 52 /* | |
| 53 * Destroy the association table. | |
| 54 */ | |
| 55 XDestroyAssocTable(menu->assoc_tab); | |
| 56 | |
| 57 /* | |
| 58 * Free the mouse cursor. | |
| 59 */ | |
| 60 XFreeCursor(display, menu->mouse_cursor); | |
| 61 | |
| 62 /* | |
| 63 * Free the fonts. | |
| 64 */ | |
| 65 XFreeFont(display, menu->p_fnt_info); | |
| 66 XFreeFont(display, menu->s_fnt_info); | |
| 67 | |
| 68 /* | |
| 69 * Free the pixmaps. | |
| 70 */ | |
| 71 /* XFreePixmap(display, menu->p_bdr_pixmap); | |
| 72 XFreePixmap(display, menu->s_bdr_pixmap); | |
| 73 XFreePixmap(display, menu->p_frg_pixmap); | |
| 74 XFreePixmap(display, menu->s_frg_pixmap); | |
| 75 XFreePixmap(display, menu->bkgnd_pixmap); */ | |
| 76 XFreePixmap(display, menu->inact_pixmap); | |
| 77 | |
| 78 /* | |
| 79 * Free the color cells. | |
| 80 */ | |
| 81 if ((menu->p_bdr_color != BlackPixel(display, DefaultScreen(display))) && (menu->p_bdr_color != WhitePixel(display, DefaultScreen(display)))) | |
| 82 XFreeColors( | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
83 display, |
| 25858 | 84 DefaultColormap(display, DefaultScreen(display)), |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
85 &menu->p_bdr_color, |
| 25858 | 86 1, 0); |
| 87 if ((menu->s_bdr_color != BlackPixel(display, DefaultScreen(display))) && (menu->s_bdr_color != WhitePixel(display, DefaultScreen(display)))) | |
| 88 XFreeColors( | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
89 display, |
|
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
90 DefaultColormap(display, DefaultScreen(display)), |
|
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
91 &menu->s_bdr_color, |
| 25858 | 92 1, 0); |
| 93 if ((menu->p_frg_color != BlackPixel(display, DefaultScreen(display))) && (menu->p_frg_color != WhitePixel(display, DefaultScreen(display)))) | |
| 94 XFreeColors( | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
95 display, |
| 25858 | 96 DefaultColormap(display, DefaultScreen(display)), |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
97 &menu->p_frg_color, |
| 25858 | 98 1, 0); |
| 99 if ((menu->s_frg_color != BlackPixel(display, DefaultScreen(display))) && (menu->s_frg_color != WhitePixel(display, DefaultScreen(display)))) | |
| 100 XFreeColors( | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
101 display, |
| 25858 | 102 DefaultColormap(display, DefaultScreen(display)), |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
103 &menu->s_frg_color, |
| 25858 | 104 1, 0); |
| 105 if ((menu->bkgnd_color != BlackPixel(display, DefaultScreen(display))) && (menu->bkgnd_color != WhitePixel(display, DefaultScreen(display)))) | |
| 106 XFreeColors( | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
107 display, |
| 25858 | 108 DefaultColormap(display, DefaultScreen(display)), |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
109 &menu->bkgnd_color, |
| 25858 | 110 1, 0); |
| 111 | |
| 112 /* | |
| 113 * Free the XMenu. | |
| 114 */ | |
| 115 free(menu); | |
| 116 } | |
| 52401 | 117 |
| 118 /* arch-tag: 44c9589f-5893-46fc-bc23-1b03a7f9c015 | |
| 119 (do not change this comment) */ |
