-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtypemap
266 lines (254 loc) · 8 KB
/
typemap
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
char * T_PV_OR_NULL
const char * T_PV_OR_NULL
EflTime * T_EVAS_OBJECT
const EflTime * T_EVAS_OBJECT
Eina_Bool T_IV
Eina_Bool * T_PTR
Elm_Text_Format T_IV
Elm_Ctxpopup_Direction T_IV
Elm_Scroller_Policy T_IV
Evas_BiDi_Direction T_IV
Evas_Aspect_Control T_IV
sssas
ElmActionslider * T_EVAS_OBJECT
const ElmActionslider * T_EVAS_OBJECT
ElmWin * T_EVAS_OBJECT
const ElmWin * T_EVAS_OBJECT
ElmBg * T_EVAS_OBJECT
const ElmBg * T_EVAS_OBJECT
ElmBubble * T_EVAS_OBJECT
const ElmBubble * T_EVAS_OBJECT
ElmCalendar * T_EVAS_OBJECT
const ElmCalendar * T_EVAS_OBJECT
# TODO: Make a T_EVAS_OBJECT of Efl_Time
Efl_Time * T_PTR
const Efl_Time * T_PTR
Elm_Calendar_Mark * T_PTR
ElmColorselector * T_EVAS_OBJECT
const ElmColorselector * T_EVAS_OBJECT
ElmColorselectorPaletteItem * T_EVAS_OBJECT
ElmCombobox * T_EVAS_OBJECT
const ElmCombobox * T_EVAS_OBJECT
ElmCtxpopup * T_EVAS_OBJECT
ElmCtxpopupItem * T_EVAS_OBJECT
ElmLabel * T_EVAS_OBJECT
ElmButton * T_EVAS_OBJECT
ElmCheck * T_EVAS_OBJECT
ElmEntry * T_EVAS_OBJECT
const ElmEntry * T_EVAS_OBJECT
ElmEntryAnchorInfo * T_PTROBJ
ElmEntryChangeInfo * T_PTROBJ
ElmFileselector * T_EVAS_OBJECT
ElmFrame * T_EVAS_OBJECT
ElmFlip * T_EVAS_OBJECT
ElmGenlist * T_EVAS_OBJECT
const ElmGenlist * T_EVAS_OBJECT
ElmGenlistItem * T_EVAS_OBJECT
const ElmGenlistItem * T_EVAS_OBJECT
ElmGenlistItemClass * T_EVAS_OBJECT
const ElmGenlistItemClass * T_EVAS_OBJECT
ElmGlview * T_EVAS_OBJECT
ElmHover * T_EVAS_OBJECT
ElmHoversel * T_EVAS_OBJECT
ElmRadio * T_EVAS_OBJECT
ElmIcon * T_EVAS_OBJECT
ElmImage * T_EVAS_OBJECT
ElmImageProgress * T_PTROBJ
ElmIndex * T_EVAS_OBJECT
ElmIndexItem * T_EVAS_OBJECT
ElmInwin * T_EVAS_OBJECT
ElmLayout * T_EVAS_OBJECT
ElmList * T_EVAS_OBJECT
ElmListItem * T_EVAS_OBJECT
ElmMapbuf * T_EVAS_OBJECT
ElmMenu * T_EVAS_OBJECT
ElmMenuItem * T_EVAS_OBJECT
ElmNotify * T_EVAS_OBJECT
ElmObjectItem * T_EVAS_OBJECT
const ElmObjectItem * T_EVAS_OBJECT
ElmPalette * T_EVAS_OBJECT
ElmPanes * T_EVAS_OBJECT
ElmPanel * T_EVAS_OBJECT
const ElmPanel * T_EVAS_OBJECT
ElmPanelScrollInfo * T_PTROBJ
ElmPhoto * T_EVAS_OBJECT
const ElmPhoto * T_EVAS_OBJECT
ElmPhotocam * T_EVAS_OBJECT
const ElmPhotocam * T_EVAS_OBJECT
ElmPopup * T_EVAS_OBJECT
const ElmPopup * T_EVAS_OBJECT
ElmProgressbar * T_EVAS_OBJECT
const ElmProgressbar * T_EVAS_OBJECT
ElmSegmentControl * T_EVAS_OBJECT
const ElmSegmentControl * T_EVAS_OBJECT
ElmSegmentItem * T_EVAS_OBJECT
const ElmSegmentItem * T_EVAS_OBJECT
ElmSeparator * T_EVAS_OBJECT
const ElmSeparator * T_EVAS_OBJECT
ElmSlider * T_EVAS_OBJECT
const ElmSlider * T_EVAS_OBJECT
ElmSpinner * T_EVAS_OBJECT
const ElmSpinner * T_EVAS_OBJECT
ElmTheme * T_EVAS_OBJECT
const ElmTheme * T_EVAS_OBJECT
ElmToolbar * T_EVAS_OBJECT
const ElmToolbar * T_EVAS_OBJECT
ElmToolbarItem * T_EVAS_OBJECT
const ElmToolbarItem * T_EVAS_OBJECT
ElmToolbarTip * T_EVAS_OBJECT
const ElmToolbarTip * T_EVAS_OBJECT
ElmToolbarItemState * T_EVAS_OBJECT
const ElmToolbarItemState * T_EVAS_OBJECT
ElmWidgetItem * T_EVAS_OBJECT
Eina_List T_PTR
Eina_List * T_PTR
EinaList T_EVAS_OBJECT
EinaList * T_EVAS_OBJECT
const EinaList * T_EVAS_OBJECT
ElmPlayer * T_EVAS_OBJECT
const ElmPlayer * T_EVAS_OBJECT
ElmVideo * T_EVAS_OBJECT
const ElmVideo * T_EVAS_OBJECT
# ElmConfig
ElmTextClass * T_PTROBJ
ElmFontOverlay * T_PTROBJ
ElmColorClass * T_PTROBJ
# Containers
ElmGrid * T_EVAS_OBJECT
const ElmGrid * T_EVAS_OBJECT
ElmBox * T_EVAS_OBJECT
const ElmBox * T_EVAS_OBJECT
ElmConformant * T_EVAS_OBJECT
ElmTable * T_EVAS_OBJECT
const ElmTable * T_EVAS_OBJECT
ElmScroller * T_EVAS_OBJECT
const ElmScroller * T_EVAS_OBJECT
ElmNaviframe * T_EVAS_OBJECT
const ElmNaviframe * T_EVAS_OBJECT
ElmNaviframeItem * T_EVAS_OBJECT
const ElmNaviframeItem * T_EVAS_OBJECT
#####################
# EMOTION
#####################
EmotionObject * T_EVAS_OBJECT
const EmotionObject * T_EVAS_OBJECT
EmotionWebcam * T_EVAS_OBJECT
const EmotionWebcam * T_EVAS_OBJECT
#####################
# EVAS
#####################
EvasCanvas * T_EVAS_OBJECT
const EvasCanvas * T_EVAS_OBJECT
EvasImage * T_EVAS_OBJECT
const EvasImage * T_EVAS_OBJECT
EvasLine * T_EVAS_OBJECT
const EvasLine * T_EVAS_OBJECT
EvasPolygon * T_EVAS_OBJECT
const EvasPolygon * T_EVAS_OBJECT
EvasRectangle * T_EVAS_OBJECT
const EvasRectangle * T_EVAS_OBJECT
EvasText * T_EVAS_OBJECT
const EvasText * T_EVAS_OBJECT
EvasTextblock * T_EVAS_OBJECT
const EvasTextblock * T_EVAS_OBJECT
EvasTextblockCursor * T_EVAS_OBJECT
const EvasTextblockCursor * T_EVAS_OBJECT
EvasTextblockNodeFormat * T_EVAS_OBJECT
const EvasTextblockNodeFormat * T_EVAS_OBJECT
EvasTextblockStyle * T_EVAS_OBJECT
const EvasTextblockStyle * T_EVAS_OBJECT
EvasTextblockRectangle * T_PTROBJ
EvasObject * T_EVAS_OBJECT
const EvasObject * T_EVAS_OBJECT
EvasCoordRectangle * T_PTROBJ
Evas_Coord T_IV
EvasModifier * T_EVAS_OBJECT
const EvasModifier * T_EVAS_OBJECT
EvasLock * T_EVAS_OBJECT
const EvasLock * T_EVAS_OBJECT
EvasEventMouseDown * T_PTROBJ
EvasEventMouseUp * T_PTROBJ
EvasEventMouseIn * T_PTROBJ
EvasEventMouseOut * T_PTROBJ
EvasEventMouseMove * T_PTROBJ
EvasEventMouseWheel * T_PTROBJ
EvasEventKeyDown * T_PTROBJ
EvasEventKeyUp * T_PTROBJ
EvasEventHold * T_PTROBJ
####################
# EDJE
####################
EdjeObject * T_EVAS_OBJECT
const EdjeObject * T_EVAS_OBJECT
EdjeMessageFloat * T_PTROBJ
EdjeMessageInt * T_PTROBJ
EdjeMessageIntSet * T_PTROBJ
EdjeMessageString * T_PTROBJ
EdjeMessageStringFloat * T_PTROBJ
EdjeMessageStringInt * T_PTROBJ
EdjeMessageFloatSet * T_PTROBJ
EdjeMessageStringSet * T_PTROBJ
####################
# ECORE
###################
EcoreEventHandler * T_EVAS_OBJECT
const EcoreEventHandler * T_EVAS_OBJECT
EcoreEvent * T_EVAS_OBJECT
const EcoreEvent * T_EVAS_OBJECT
EcoreEventFilter * T_EVAS_OBJECT
const EcoreEventFilter * T_EVAS_OBJECT
EcoreEventKey * T_EVAS_OBJECT
EcoreEventMouseButton * T_EVAS_OBJECT
EcoreEventMouseWheel * T_EVAS_OBJECT
EcoreEventMouseMove * T_EVAS_OBJECT
EcoreEventSignalExit * T_EVAS_OBJECT
EcoreEventSignalRealtime * T_EVAS_OBJECT
EcoreEventSignalUser * T_EVAS_OBJECT
EcoreEvas * T_EVAS_OBJECT
const EcoreEvas * T_EVAS_OBJECT
EcoreTimer * T_EVAS_OBJECT
const EcoreTimer * T_EVAS_OBJECT
EcoreIdler * T_EVAS_OBJECT
EcoreIdleEnterer * T_EVAS_OBJECT
EcoreIdleExiter * T_EVAS_OBJECT
EcorePoller * T_EVAS_OBJECT
const EcorePoller * T_EVAS_OBJECT
#############
# Others
#############
intArray * T_ARRAY
################################################################################
INPUT
# the difference to T_PTROBJ is
# 1) if undef is passed instead of an Evas_Object and the derived structs,
# then on the C Side we must have NULL instead of PL_Sv_undef!!!
# otherwise we get the error "$var is not of type EvasObjectPtr"
# 2) const is cut
T_EVAS_OBJECT
if (!SvROK($arg)) {
$var = NULL;
}
else {
if (sv_derived_from($arg, \"${(my $ntt=$ntype)=~s/^const //g;\$ntt}\")) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
}
else {
Perl_croak(aTHX_ \"%s: %s is not of type %s\",
${$ALIAS?\q[GvNAME(CvGV(cv))]:\qq[\"$pname\"]},
\"$var\", \"$ntype\");
}
}
T_PV_OR_NULL
if (!SvPOK($arg)) {
$var = NULL;
}
else {
$var = ($type)SvPV_nolen($arg);
}
################################################################################
OUTPUT
T_EVAS_OBJECT
sv_setref_pv($arg, \"${(my $ntt=$ntype)=~s/^const //g;\$ntt}\", (void*)$var);
T_PV_OR_NULL
sv_setpv((SV*)$arg, $var);