Mercurial > emacs
annotate lwlib/lwlib-int.h @ 77363:b20c0359fb8d
*** empty log message ***
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 21 Apr 2007 08:59:33 +0000 |
parents | 9f78501bf1f3 |
children | a1c6fb73c033 ec58e5c426ef |
rev | line source |
---|---|
76178
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
1 /* |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
2 Copyright (C) 1992 Lucid, Inc. |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
3 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
4 2007 Free Software Foundation, Inc. |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
5 |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
6 This file is part of the Lucid Widget Library. |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
7 |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
8 The Lucid Widget Library is free software; you can redistribute it and/or |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
9 modify it under the terms of the GNU General Public License as published by |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
10 the Free Software Foundation; either version 1, or (at your option) |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
11 any later version. |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
12 |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
13 The Lucid Widget Library is distributed in the hope that it will be useful, |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
14 but WITHOUT ANY WARRANTY; without even the implied warranty of |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
16 GNU General Public License for more details. |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
17 |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
18 You should have received a copy of the GNU General Public License |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
19 along with GNU Emacs; see the file COPYING. If not, write to |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
20 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
21 Boston, MA 02110-1301, USA. */ |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
22 |
9f78501bf1f3
Add Lucid and FSF copyrights and GPL text.
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
23 |
5626 | 24 #ifndef LWLIB_INTERNAL_H |
25 #define LWLIB_INTERNAL_H | |
26 | |
27 #include "lwlib.h" | |
28 | |
29466 | 29 extern char *safe_strdup __P ((const char *)); |
5626 | 30 |
31 typedef struct _widget_instance | |
32 { | |
33 Widget widget; | |
34 Widget parent; | |
35 Boolean pop_up_p; | |
36 struct _widget_info* info; | |
37 struct _widget_instance* next; | |
38 } widget_instance; | |
39 | |
40 typedef struct _widget_info | |
41 { | |
42 char* type; | |
43 char* name; | |
44 LWLIB_ID id; | |
45 widget_value* val; | |
46 Boolean busy; | |
47 lw_callback pre_activate_cb; | |
48 lw_callback selection_cb; | |
49 lw_callback post_activate_cb; | |
27336
397da07a6912
Add prototype for lw_get_widget_instance.
Gerd Moellmann <gerd@gnu.org>
parents:
14018
diff
changeset
|
50 lw_callback highlight_cb; |
5626 | 51 struct _widget_instance* instances; |
52 struct _widget_info* next; | |
53 } widget_info; | |
54 | |
55 typedef Widget | |
5706
75570af32e92
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5626
diff
changeset
|
56 (*widget_creation_function) (); |
5626 | 57 |
58 typedef struct _widget_creation_entry | |
59 { | |
60 char* type; | |
61 widget_creation_function function; | |
62 } widget_creation_entry; | |
63 | |
64 /* update all other instances of a widget. Can be used in a callback when | |
14018 | 65 a widget has been used by the user */ |
5626 | 66 void |
29466 | 67 lw_internal_update_other_instances __P ((Widget, XtPointer, XtPointer)); |
5626 | 68 |
69 /* get the widget_value for a widget in a given instance */ | |
70 widget_value* | |
29466 | 71 lw_get_widget_value_for_widget __P ((widget_instance *, Widget)); |
5626 | 72 |
29466 | 73 widget_info *lw_get_widget_info __P ((LWLIB_ID)); |
74 widget_instance * lw_get_widget_instance __P ((Widget)); | |
8723 | 75 |
5626 | 76 #endif /* LWLIB_INTERNAL_H */ |
52401 | 77 |
78 /* arch-tag: ae02f67d-ef25-421c-b956-b01a4b0aac76 | |
79 (do not change this comment) */ |