diff options
Diffstat (limited to 'meta/packages/xorg-lib/xorg-headers-native/X11/SelectionI.h')
-rw-r--r-- | meta/packages/xorg-lib/xorg-headers-native/X11/SelectionI.h | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/meta/packages/xorg-lib/xorg-headers-native/X11/SelectionI.h b/meta/packages/xorg-lib/xorg-headers-native/X11/SelectionI.h new file mode 100644 index 0000000000..e589aece54 --- /dev/null +++ b/meta/packages/xorg-lib/xorg-headers-native/X11/SelectionI.h | |||
@@ -0,0 +1,170 @@ | |||
1 | /* $Xorg: SelectionI.h,v 1.4 2001/02/09 02:03:58 xorgcvs Exp $ */ | ||
2 | |||
3 | /*********************************************************** | ||
4 | |||
5 | Copyright 1987, 1988, 1994, 1998 The Open Group | ||
6 | |||
7 | Permission to use, copy, modify, distribute, and sell this software and its | ||
8 | documentation for any purpose is hereby granted without fee, provided that | ||
9 | the above copyright notice appear in all copies and that both that | ||
10 | copyright notice and this permission notice appear in supporting | ||
11 | documentation. | ||
12 | |||
13 | The above copyright notice and this permission notice shall be included in | ||
14 | all copies or substantial portions of the Software. | ||
15 | |||
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
19 | OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN | ||
20 | AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
22 | |||
23 | Except as contained in this notice, the name of The Open Group shall not be | ||
24 | used in advertising or otherwise to promote the sale, use or other dealings | ||
25 | in this Software without prior written authorization from The Open Group. | ||
26 | |||
27 | |||
28 | Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. | ||
29 | |||
30 | All Rights Reserved | ||
31 | |||
32 | Permission to use, copy, modify, and distribute this software and its | ||
33 | documentation for any purpose and without fee is hereby granted, | ||
34 | provided that the above copyright notice appear in all copies and that | ||
35 | both that copyright notice and this permission notice appear in | ||
36 | supporting documentation, and that the name of Digital not be | ||
37 | used in advertising or publicity pertaining to distribution of the | ||
38 | software without specific, written prior permission. | ||
39 | |||
40 | DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING | ||
41 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL | ||
42 | DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR | ||
43 | ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, | ||
44 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, | ||
45 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS | ||
46 | SOFTWARE. | ||
47 | |||
48 | ******************************************************************/ | ||
49 | |||
50 | #ifndef _XtselectionI_h | ||
51 | #define _XtselectionI_h | ||
52 | |||
53 | #include "Intrinsic.h" | ||
54 | |||
55 | typedef struct _RequestRec *Request; | ||
56 | typedef struct _SelectRec *Select; | ||
57 | |||
58 | typedef struct _RequestRec { | ||
59 | Select ctx; /* logical owner */ | ||
60 | Widget widget; /* widget actually receiving Selection events */ | ||
61 | Window requestor; | ||
62 | Atom property; | ||
63 | Atom target; | ||
64 | Atom type; | ||
65 | int format; | ||
66 | XtPointer value; | ||
67 | unsigned long bytelength; | ||
68 | unsigned long offset; | ||
69 | XtIntervalId timeout; | ||
70 | XSelectionRequestEvent event; /* for XtGetSelectionRequest */ | ||
71 | Boolean allSent; | ||
72 | } RequestRec; | ||
73 | |||
74 | typedef struct { | ||
75 | Atom prop; | ||
76 | Boolean avail; | ||
77 | } SelectionPropRec, *SelectionProp; | ||
78 | |||
79 | typedef struct { | ||
80 | Display *dpy; | ||
81 | Atom incr_atom, indirect_atom, timestamp_atom; | ||
82 | int propCount; | ||
83 | SelectionProp list; | ||
84 | } PropListRec, *PropList; | ||
85 | |||
86 | typedef struct _SelectRec { | ||
87 | Atom selection; /* constant */ | ||
88 | Display *dpy; /* constant */ | ||
89 | Widget widget; | ||
90 | Time time; | ||
91 | unsigned long serial; | ||
92 | XtConvertSelectionProc convert; | ||
93 | XtLoseSelectionProc loses; | ||
94 | XtSelectionDoneProc notify; | ||
95 | XtCancelConvertSelectionProc owner_cancel; | ||
96 | XtPointer owner_closure; | ||
97 | PropList prop_list; | ||
98 | Request req; /* state for local non-incr xfer */ | ||
99 | int ref_count; /* of active transfers */ | ||
100 | unsigned int incremental:1; | ||
101 | unsigned int free_when_done:1; | ||
102 | unsigned int was_disowned:1; | ||
103 | } SelectRec; | ||
104 | |||
105 | typedef struct _ParamRec { | ||
106 | Atom selection; | ||
107 | Atom param; | ||
108 | } ParamRec, *Param; | ||
109 | |||
110 | typedef struct _ParamInfoRec { | ||
111 | unsigned int count; | ||
112 | Param paramlist; | ||
113 | } ParamInfoRec, *ParamInfo; | ||
114 | |||
115 | typedef struct _QueuedRequestRec { | ||
116 | Atom selection; | ||
117 | Atom target; | ||
118 | Atom param; | ||
119 | XtSelectionCallbackProc callback; | ||
120 | XtPointer closure; | ||
121 | Time time; | ||
122 | Boolean incremental; | ||
123 | } QueuedRequestRec, *QueuedRequest; | ||
124 | |||
125 | typedef struct _QueuedRequestInfoRec { | ||
126 | int count; | ||
127 | Atom *selections; | ||
128 | QueuedRequest *requests; | ||
129 | } QueuedRequestInfoRec, *QueuedRequestInfo; | ||
130 | |||
131 | typedef struct { | ||
132 | XtSelectionCallbackProc *callbacks; | ||
133 | XtPointer *req_closure; | ||
134 | Atom property; | ||
135 | Atom *target; | ||
136 | Atom type; | ||
137 | int format; | ||
138 | char *value; | ||
139 | int bytelength; | ||
140 | int offset; | ||
141 | XtIntervalId timeout; | ||
142 | XtEventHandler proc; | ||
143 | Widget widget; | ||
144 | Time time; | ||
145 | Select ctx; | ||
146 | Boolean *incremental; | ||
147 | int current; | ||
148 | } CallBackInfoRec, *CallBackInfo; | ||
149 | |||
150 | typedef struct { | ||
151 | Atom target; | ||
152 | Atom property; | ||
153 | } IndirectPair; | ||
154 | |||
155 | #define IndirectPairWordSize 2 | ||
156 | |||
157 | typedef struct { | ||
158 | int active_transfer_count; | ||
159 | } RequestWindowRec; | ||
160 | |||
161 | #define MAX_SELECTION_INCR(dpy) (((65536 < XMaxRequestSize(dpy)) ? \ | ||
162 | (65536 << 2) : (XMaxRequestSize(dpy) << 2))-100) | ||
163 | |||
164 | #define MATCH_SELECT(event, info) ((event->time == info->time) && \ | ||
165 | (event->requestor == XtWindow(info->widget)) && \ | ||
166 | (event->selection == info->ctx->selection) && \ | ||
167 | (event->target == *info->target)) | ||
168 | |||
169 | #endif /* _XtselectionI_h */ | ||
170 | /* DON'T ADD STUFF AFTER THIS #endif */ | ||