Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | TYPEMAP |
2 | Tk_Window T_TK_WINDOW | |
3 | Tk_Image T_TK_IMAGE | |
4 | TkWindow * T_TKWINDOW | |
5 | Display * T_IVOBJ | |
6 | Screen * T_IVOBJ | |
7 | Visual * T_IVOBJ | |
8 | Window T_IVOBJ | |
9 | Colormap T_IVOBJ | |
10 | GC T_IVOBJ | |
11 | Font T_IVOBJ | |
12 | Atom T_IV | |
13 | HANDLE T_IV | |
14 | BOOL T_IV | |
15 | HWND T_TK_HWND | |
16 | FILE * T_NIO | |
17 | hash_ptr * T_PTR | |
18 | Tk_3DBorder T_IVOBJ | |
19 | Tk_Uid T_TK_UID | |
20 | Tcl_Interp * T_TK_INTERP | |
21 | Tk_Font T_TK_FONT | |
22 | EventAndKeySym * T_TK_XEVENT | |
23 | LangCallback * T_TK_CALLBACK | |
24 | ||
25 | INPUT | |
26 | T_PVOBJ | |
27 | if (sv_object($arg)) { | |
28 | STRLEN sz; | |
29 | $var = ($type) SvPV((SV*)SvRV($arg),sz); | |
30 | if (sz != sizeof(*$var)) | |
31 | croak(\"$var too small for $type\"); | |
32 | } | |
33 | else | |
34 | croak(\"$var is not an object\") | |
35 | ||
36 | T_TK_WINDOW | |
37 | $var = SVtoWindow($arg) | |
38 | ||
39 | T_TK_CALLBACK | |
40 | $var = LangMakeCallback($arg) | |
41 | ||
42 | ||
43 | T_TK_HWND | |
44 | $var = SVtoHWND($arg) | |
45 | ||
46 | T_TK_XEVENT | |
47 | $var = SVtoEventAndKeySym($arg) | |
48 | ||
49 | T_TK_FONT | |
50 | $var = SVtoFont($arg) | |
51 | ||
52 | T_TK_IMAGE | |
53 | $var = SVtoImage($arg) | |
54 | ||
55 | T_TKWINDOW | |
56 | $var = (TkWindow *) SVtoWindow($arg) | |
57 | ||
58 | T_TK_INTERP | |
59 | $var = WindowCommand($arg,NULL,1)->interp | |
60 | ||
61 | T_TK_UID | |
62 | $var = Tk_GetUid(SvPV($arg,na)) | |
63 | ||
64 | T_IVOBJ | |
65 | if (sv_isa($arg, \"${ntype}\")) { | |
66 | $var = ($type)(SvIV(SvRV($arg))); | |
67 | } | |
68 | else { | |
69 | $var = ($type) NULL; | |
70 | croak(\"$var is not of type ${ntype}\"); | |
71 | } | |
72 | ||
73 | T_NIO | |
74 | if (sv_isa($arg, \"${Package}\")) { | |
75 | $var = IoIFP(sv_2io(SvRV($arg))); | |
76 | } | |
77 | else | |
78 | croak(\"$var is not of type ${Package}\") | |
79 | ||
80 | ||
81 | OUTPUT | |
82 | T_IVOBJ | |
83 | sv_setref_iv($arg, \"${ntype}\", (IV) $var); | |
84 | ||
85 | T_TK_UID | |
86 | sv_setpv($arg,$var); | |
87 | ||
88 | T_TK_WINDOW | |
89 | sv_setsv($arg,TkToWidget($var,NULL)); | |
90 | ||
91 | T_TKWINDOW | |
92 | sv_setsv($arg,TkToWidget((Tk_Window) $var,NULL)); | |
93 | ||
94 |