1# tk.decls --
2#
3#	This file contains the declarations for all supported public
4#	functions that are exported by the Tk library via the stubs table.
5#	This file is used to generate the tkDecls.h, tkPlatDecls.h,
6#	tkStub.c, and tkPlatStub.c files.
7#
8# Copyright (c) 1998-2000 Ajuba Solutions.
9# Copyright (c) 2007 Daniel A. Steffen <das@users.sourceforge.net>
10#
11# See the file "license.terms" for information on usage and redistribution
12# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
13#
14# RCS: @(#) $Id$
15
16library tk
17
18# Define the tk interface with 3 sub interfaces:
19#     tkPlat	 - platform specific public
20#     tkInt	 - generic private
21#     tkPlatInt - platform specific private
22
23interface tk
24hooks {tkPlat tkInt tkIntPlat tkIntXlib}
25
26# Declare each of the functions in the public Tk interface.  Note that
27# the an index should never be reused for a different function in order
28# to preserve backwards compatibility.
29
30declare 0 generic {
31    void Tk_MainLoop(void)
32}
33declare 1 generic {
34    XColor *Tk_3DBorderColor(Tk_3DBorder border)
35}
36declare 2 generic {
37    GC Tk_3DBorderGC(Tk_Window tkwin, Tk_3DBorder border,
38	    int which)
39}
40declare 3 generic {
41    void Tk_3DHorizontalBevel(Tk_Window tkwin,
42	    Drawable drawable, Tk_3DBorder border, int x,
43	    int y, int width, int height, int leftIn,
44	    int rightIn, int topBevel, int relief)
45}
46declare 4 generic {
47    void Tk_3DVerticalBevel(Tk_Window tkwin,
48	    Drawable drawable, Tk_3DBorder border, int x,
49	    int y, int width, int height, int leftBevel,
50	    int relief)
51}
52declare 5 generic {
53    void Tk_AddOption(Tk_Window tkwin, CONST char *name,
54	    CONST char *value, int priority)
55}
56declare 6 generic {
57    void Tk_BindEvent(Tk_BindingTable bindingTable,
58	    XEvent *eventPtr, Tk_Window tkwin, int numObjects,
59	    ClientData *objectPtr)
60}
61declare 7 generic {
62    void Tk_CanvasDrawableCoords(Tk_Canvas canvas,
63	    double x, double y, short *drawableXPtr,
64	    short *drawableYPtr)
65}
66declare 8 generic {
67    void Tk_CanvasEventuallyRedraw(Tk_Canvas canvas, int x1, int y1,
68	    int x2, int y2)
69}
70declare 9 generic {
71    int Tk_CanvasGetCoord(Tcl_Interp *interp,
72	    Tk_Canvas canvas, CONST char *str, double *doublePtr)
73}
74declare 10 generic {
75    Tk_CanvasTextInfo *Tk_CanvasGetTextInfo(Tk_Canvas canvas)
76}
77declare 11 generic {
78    int Tk_CanvasPsBitmap(Tcl_Interp *interp,
79	    Tk_Canvas canvas, Pixmap bitmap, int x, int y,
80	    int width, int height)
81}
82declare 12 generic {
83    int Tk_CanvasPsColor(Tcl_Interp *interp,
84	    Tk_Canvas canvas, XColor *colorPtr)
85}
86declare 13 generic {
87    int Tk_CanvasPsFont(Tcl_Interp *interp,
88	    Tk_Canvas canvas, Tk_Font font)
89}
90declare 14 generic {
91    void Tk_CanvasPsPath(Tcl_Interp *interp,
92	    Tk_Canvas canvas, double *coordPtr, int numPoints)
93}
94declare 15 generic {
95    int Tk_CanvasPsStipple(Tcl_Interp *interp,
96	    Tk_Canvas canvas, Pixmap bitmap)
97}
98declare 16 generic {
99    double Tk_CanvasPsY(Tk_Canvas canvas, double y)
100}
101declare 17 generic {
102    void Tk_CanvasSetStippleOrigin(Tk_Canvas canvas, GC gc)
103}
104declare 18 generic {
105    int Tk_CanvasTagsParseProc(ClientData clientData, Tcl_Interp *interp,
106	    Tk_Window tkwin, CONST char *value, char *widgRec, int offset)
107}
108declare 19 generic {
109    char *Tk_CanvasTagsPrintProc(ClientData clientData, Tk_Window tkwin,
110	    char *widgRec, int offset, Tcl_FreeProc **freeProcPtr)
111}
112declare 20 generic {
113    Tk_Window	Tk_CanvasTkwin(Tk_Canvas canvas)
114}
115declare 21 generic {
116    void Tk_CanvasWindowCoords(Tk_Canvas canvas, double x, double y,
117	    short *screenXPtr, short *screenYPtr)
118}
119declare 22 generic {
120    void Tk_ChangeWindowAttributes(Tk_Window tkwin, unsigned long valueMask,
121	    XSetWindowAttributes *attsPtr)
122}
123declare 23 generic {
124    int Tk_CharBbox(Tk_TextLayout layout, int index, int *xPtr,
125	    int *yPtr, int *widthPtr, int *heightPtr)
126}
127declare 24 generic {
128    void Tk_ClearSelection(Tk_Window tkwin, Atom selection)
129}
130declare 25 generic {
131    int Tk_ClipboardAppend(Tcl_Interp *interp, Tk_Window tkwin,
132	    Atom target, Atom format, char *buffer)
133}
134declare 26 generic {
135    int Tk_ClipboardClear(Tcl_Interp *interp, Tk_Window tkwin)
136}
137declare 27 generic {
138    int Tk_ConfigureInfo(Tcl_Interp *interp,
139	    Tk_Window tkwin, Tk_ConfigSpec *specs,
140	    char *widgRec, CONST char *argvName, int flags)
141}
142declare 28 generic {
143    int Tk_ConfigureValue(Tcl_Interp *interp,
144	    Tk_Window tkwin, Tk_ConfigSpec *specs,
145	    char *widgRec, CONST char *argvName, int flags)
146}
147declare 29 generic {
148    int Tk_ConfigureWidget(Tcl_Interp *interp,
149	    Tk_Window tkwin, Tk_ConfigSpec *specs,
150	    int argc, CONST84 char **argv, char *widgRec,
151	    int flags)
152}
153declare 30 generic {
154    void Tk_ConfigureWindow(Tk_Window tkwin,
155	    unsigned int valueMask, XWindowChanges *valuePtr)
156}
157declare 31 generic {
158    Tk_TextLayout Tk_ComputeTextLayout(Tk_Font font,
159	    CONST char *str, int numChars, int wrapLength,
160	    Tk_Justify justify, int flags, int *widthPtr,
161	    int *heightPtr)
162}
163declare 32 generic {
164    Tk_Window Tk_CoordsToWindow(int rootX, int rootY, Tk_Window tkwin)
165}
166declare 33 generic {
167    unsigned long Tk_CreateBinding(Tcl_Interp *interp,
168	    Tk_BindingTable bindingTable, ClientData object,
169	    CONST char *eventStr, CONST char *command, int append)
170}
171declare 34 generic {
172    Tk_BindingTable Tk_CreateBindingTable(Tcl_Interp *interp)
173}
174declare 35 generic {
175    Tk_ErrorHandler Tk_CreateErrorHandler(Display *display,
176	    int errNum, int request, int minorCode,
177	    Tk_ErrorProc *errorProc, ClientData clientData)
178}
179declare 36 generic {
180    void Tk_CreateEventHandler(Tk_Window token,
181	    unsigned long mask, Tk_EventProc *proc,
182	    ClientData clientData)
183}
184declare 37 generic {
185    void Tk_CreateGenericHandler(Tk_GenericProc *proc, ClientData clientData)
186}
187declare 38 generic {
188    void Tk_CreateImageType(Tk_ImageType *typePtr)
189}
190declare 39 generic {
191    void Tk_CreateItemType(Tk_ItemType *typePtr)
192}
193declare 40 generic {
194    void Tk_CreatePhotoImageFormat(Tk_PhotoImageFormat *formatPtr)
195}
196declare 41 generic {
197    void Tk_CreateSelHandler(Tk_Window tkwin,
198	    Atom selection, Atom target,
199	    Tk_SelectionProc *proc, ClientData clientData,
200	    Atom format)
201}
202declare 42 generic {
203    Tk_Window Tk_CreateWindow(Tcl_Interp *interp,
204	    Tk_Window parent, CONST char *name, CONST char *screenName)
205}
206declare 43 generic {
207    Tk_Window Tk_CreateWindowFromPath(Tcl_Interp *interp, Tk_Window tkwin,
208	    CONST char *pathName, CONST char *screenName)
209}
210declare 44 generic {
211    int Tk_DefineBitmap(Tcl_Interp *interp, CONST char *name,
212	    CONST char *source, int width, int height)
213}
214declare 45 generic {
215    void Tk_DefineCursor(Tk_Window window, Tk_Cursor cursor)
216}
217declare 46 generic {
218    void Tk_DeleteAllBindings(Tk_BindingTable bindingTable, ClientData object)
219}
220declare 47 generic {
221    int Tk_DeleteBinding(Tcl_Interp *interp,
222	    Tk_BindingTable bindingTable, ClientData object,
223	    CONST char *eventStr)
224}
225declare 48 generic {
226    void Tk_DeleteBindingTable(Tk_BindingTable bindingTable)
227}
228declare 49 generic {
229    void Tk_DeleteErrorHandler(Tk_ErrorHandler handler)
230}
231declare 50 generic {
232    void Tk_DeleteEventHandler(Tk_Window token,
233	    unsigned long mask, Tk_EventProc *proc,
234	    ClientData clientData)
235}
236declare 51 generic {
237    void Tk_DeleteGenericHandler(Tk_GenericProc *proc, ClientData clientData)
238}
239declare 52 generic {
240    void Tk_DeleteImage(Tcl_Interp *interp, CONST char *name)
241}
242declare 53 generic {
243    void Tk_DeleteSelHandler(Tk_Window tkwin, Atom selection, Atom target)
244}
245declare 54 generic {
246    void Tk_DestroyWindow(Tk_Window tkwin)
247}
248declare 55 generic {
249    CONST84_RETURN char *Tk_DisplayName(Tk_Window tkwin)
250}
251declare 56 generic {
252    int Tk_DistanceToTextLayout(Tk_TextLayout layout, int x, int y)
253}
254declare 57 generic {
255    void Tk_Draw3DPolygon(Tk_Window tkwin,
256	    Drawable drawable, Tk_3DBorder border,
257	    XPoint *pointPtr, int numPoints, int borderWidth,
258	    int leftRelief)
259}
260declare 58 generic {
261    void Tk_Draw3DRectangle(Tk_Window tkwin, Drawable drawable,
262	    Tk_3DBorder border, int x, int y, int width, int height,
263	    int borderWidth, int relief)
264}
265declare 59 generic {
266    void Tk_DrawChars(Display *display, Drawable drawable, GC gc,
267	    Tk_Font tkfont, CONST char *source, int numBytes, int x, int y)
268}
269declare 60 generic {
270    void Tk_DrawFocusHighlight(Tk_Window tkwin, GC gc, int width,
271	    Drawable drawable)
272}
273declare 61 generic {
274    void Tk_DrawTextLayout(Display *display,
275	    Drawable drawable, GC gc, Tk_TextLayout layout,
276	    int x, int y, int firstChar, int lastChar)
277}
278declare 62 generic {
279    void Tk_Fill3DPolygon(Tk_Window tkwin,
280	    Drawable drawable, Tk_3DBorder border,
281	    XPoint *pointPtr, int numPoints, int borderWidth,
282	    int leftRelief)
283}
284declare 63 generic {
285    void Tk_Fill3DRectangle(Tk_Window tkwin,
286	    Drawable drawable, Tk_3DBorder border, int x,
287	    int y, int width, int height, int borderWidth,
288	    int relief)
289}
290declare 64 generic {
291    Tk_PhotoHandle Tk_FindPhoto(Tcl_Interp *interp, CONST char *imageName)
292}
293declare 65 generic {
294    Font Tk_FontId(Tk_Font font)
295}
296declare 66 generic {
297    void Tk_Free3DBorder(Tk_3DBorder border)
298}
299declare 67 generic {
300    void Tk_FreeBitmap(Display *display, Pixmap bitmap)
301}
302declare 68 generic {
303    void Tk_FreeColor(XColor *colorPtr)
304}
305declare 69 generic {
306    void Tk_FreeColormap(Display *display, Colormap colormap)
307}
308declare 70 generic {
309    void Tk_FreeCursor(Display *display, Tk_Cursor cursor)
310}
311declare 71 generic {
312    void Tk_FreeFont(Tk_Font f)
313}
314declare 72 generic {
315    void Tk_FreeGC(Display *display, GC gc)
316}
317declare 73 generic {
318    void Tk_FreeImage(Tk_Image image)
319}
320declare 74 generic {
321    void Tk_FreeOptions(Tk_ConfigSpec *specs,
322	    char *widgRec, Display *display, int needFlags)
323}
324declare 75 generic {
325    void Tk_FreePixmap(Display *display, Pixmap pixmap)
326}
327declare 76 generic {
328    void Tk_FreeTextLayout(Tk_TextLayout textLayout)
329}
330declare 77 generic {
331    void Tk_FreeXId(Display *display, XID xid)
332}
333declare 78 generic {
334    GC Tk_GCForColor(XColor *colorPtr, Drawable drawable)
335}
336declare 79 generic {
337    void Tk_GeometryRequest(Tk_Window tkwin, int reqWidth,  int reqHeight)
338}
339declare 80 generic {
340    Tk_3DBorder	Tk_Get3DBorder(Tcl_Interp *interp, Tk_Window tkwin,
341	    Tk_Uid colorName)
342}
343declare 81 generic {
344    void Tk_GetAllBindings(Tcl_Interp *interp,
345	    Tk_BindingTable bindingTable, ClientData object)
346}
347declare 82 generic {
348    int Tk_GetAnchor(Tcl_Interp *interp,
349	    CONST char *str, Tk_Anchor *anchorPtr)
350}
351declare 83 generic {
352    CONST84_RETURN char *Tk_GetAtomName(Tk_Window tkwin, Atom atom)
353}
354declare 84 generic {
355    CONST84_RETURN char *Tk_GetBinding(Tcl_Interp *interp,
356	    Tk_BindingTable bindingTable, ClientData object,
357	    CONST char *eventStr)
358}
359declare 85 generic {
360    Pixmap Tk_GetBitmap(Tcl_Interp *interp, Tk_Window tkwin, CONST char *str)
361}
362declare 86 generic {
363    Pixmap Tk_GetBitmapFromData(Tcl_Interp *interp,
364	    Tk_Window tkwin, CONST char *source, int width, int height)
365}
366declare 87 generic {
367    int Tk_GetCapStyle(Tcl_Interp *interp, CONST char *str, int *capPtr)
368}
369declare 88 generic {
370    XColor *Tk_GetColor(Tcl_Interp *interp, Tk_Window tkwin, Tk_Uid name)
371}
372declare 89 generic {
373    XColor *Tk_GetColorByValue(Tk_Window tkwin, XColor *colorPtr)
374}
375declare 90 generic {
376    Colormap Tk_GetColormap(Tcl_Interp *interp, Tk_Window tkwin,
377	    CONST char *str)
378}
379declare 91 generic {
380    Tk_Cursor Tk_GetCursor(Tcl_Interp *interp, Tk_Window tkwin,
381	    Tk_Uid str)
382}
383declare 92 generic {
384    Tk_Cursor Tk_GetCursorFromData(Tcl_Interp *interp,
385	    Tk_Window tkwin, CONST char *source, CONST char *mask,
386	    int width, int height, int xHot, int yHot,
387	    Tk_Uid fg, Tk_Uid bg)
388}
389declare 93 generic {
390    Tk_Font Tk_GetFont(Tcl_Interp *interp,
391	    Tk_Window tkwin, CONST char *str)
392}
393declare 94 generic {
394    Tk_Font Tk_GetFontFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
395}
396declare 95 generic {
397    void Tk_GetFontMetrics(Tk_Font font, Tk_FontMetrics *fmPtr)
398}
399declare 96 generic {
400    GC Tk_GetGC(Tk_Window tkwin, unsigned long valueMask, XGCValues *valuePtr)
401}
402declare 97 generic {
403    Tk_Image Tk_GetImage(Tcl_Interp *interp, Tk_Window tkwin, CONST char *name,
404	    Tk_ImageChangedProc *changeProc, ClientData clientData)
405}
406declare 98 generic {
407    ClientData Tk_GetImageMasterData(Tcl_Interp *interp,
408	    CONST char *name, Tk_ImageType **typePtrPtr)
409}
410declare 99 generic {
411    Tk_ItemType *Tk_GetItemTypes(void)
412}
413declare 100 generic {
414    int Tk_GetJoinStyle(Tcl_Interp *interp, CONST char *str, int *joinPtr)
415}
416declare 101 generic {
417    int Tk_GetJustify(Tcl_Interp *interp,
418	    CONST char *str, Tk_Justify *justifyPtr)
419}
420declare 102 generic {
421    int Tk_GetNumMainWindows(void)
422}
423declare 103 generic {
424    Tk_Uid Tk_GetOption(Tk_Window tkwin, CONST char *name,
425	    CONST char *className)
426}
427declare 104 generic {
428    int Tk_GetPixels(Tcl_Interp *interp,
429	    Tk_Window tkwin, CONST char *str, int *intPtr)
430}
431declare 105 generic {
432    Pixmap Tk_GetPixmap(Display *display, Drawable d,
433	    int width, int height, int depth)
434}
435declare 106 generic {
436    int Tk_GetRelief(Tcl_Interp *interp, CONST char *name, int *reliefPtr)
437}
438declare 107 generic {
439    void Tk_GetRootCoords(Tk_Window tkwin, int *xPtr, int *yPtr)
440}
441declare 108 generic {
442    int Tk_GetScrollInfo(Tcl_Interp *interp,
443	    int argc, CONST84 char **argv, double *dblPtr, int *intPtr)
444}
445declare 109 generic {
446    int Tk_GetScreenMM(Tcl_Interp *interp,
447	    Tk_Window tkwin, CONST char *str, double *doublePtr)
448}
449declare 110 generic {
450    int Tk_GetSelection(Tcl_Interp *interp,
451	    Tk_Window tkwin, Atom selection, Atom target,
452	    Tk_GetSelProc *proc, ClientData clientData)
453}
454declare 111 generic {
455    Tk_Uid Tk_GetUid(CONST char *str)
456}
457declare 112 generic {
458    Visual *Tk_GetVisual(Tcl_Interp *interp,
459	    Tk_Window tkwin, CONST char *str, int *depthPtr,
460	    Colormap *colormapPtr)
461}
462declare 113 generic {
463    void Tk_GetVRootGeometry(Tk_Window tkwin,
464	    int *xPtr, int *yPtr, int *widthPtr, int *heightPtr)
465}
466declare 114 generic {
467    int Tk_Grab(Tcl_Interp *interp, Tk_Window tkwin, int grabGlobal)
468}
469declare 115 generic {
470    void Tk_HandleEvent(XEvent *eventPtr)
471}
472declare 116 generic {
473    Tk_Window Tk_IdToWindow(Display *display, Window window)
474}
475declare 117 generic {
476    void Tk_ImageChanged(Tk_ImageMaster master, int x, int y,
477	    int width, int height, int imageWidth, int imageHeight)
478}
479declare 118 generic {
480    int Tk_Init(Tcl_Interp *interp)
481}
482declare 119 generic {
483    Atom Tk_InternAtom(Tk_Window tkwin, CONST char *name)
484}
485declare 120 generic {
486    int Tk_IntersectTextLayout(Tk_TextLayout layout, int x, int y,
487	    int width, int height)
488}
489declare 121 generic {
490    void Tk_MaintainGeometry(Tk_Window slave,
491	    Tk_Window master, int x, int y, int width, int height)
492}
493declare 122 generic {
494    Tk_Window Tk_MainWindow(Tcl_Interp *interp)
495}
496declare 123 generic {
497    void Tk_MakeWindowExist(Tk_Window tkwin)
498}
499declare 124 generic {
500    void Tk_ManageGeometry(Tk_Window tkwin,
501	    CONST Tk_GeomMgr *mgrPtr, ClientData clientData)
502}
503declare 125 generic {
504    void Tk_MapWindow(Tk_Window tkwin)
505}
506declare 126 generic {
507    int Tk_MeasureChars(Tk_Font tkfont,
508	    CONST char *source, int numBytes, int maxPixels,
509	    int flags, int *lengthPtr)
510}
511declare 127 generic {
512    void Tk_MoveResizeWindow(Tk_Window tkwin,
513	    int x, int y, int width, int height)
514}
515declare 128 generic {
516    void Tk_MoveWindow(Tk_Window tkwin, int x, int y)
517}
518declare 129 generic {
519    void Tk_MoveToplevelWindow(Tk_Window tkwin, int x, int y)
520}
521declare 130 generic {
522    CONST84_RETURN char *Tk_NameOf3DBorder(Tk_3DBorder border)
523}
524declare 131 generic {
525    CONST84_RETURN char *Tk_NameOfAnchor(Tk_Anchor anchor)
526}
527declare 132 generic {
528    CONST84_RETURN char *Tk_NameOfBitmap(Display *display, Pixmap bitmap)
529}
530declare 133 generic {
531    CONST84_RETURN char *Tk_NameOfCapStyle(int cap)
532}
533declare 134 generic {
534    CONST84_RETURN char *Tk_NameOfColor(XColor *colorPtr)
535}
536declare 135 generic {
537    CONST84_RETURN char *Tk_NameOfCursor(Display *display, Tk_Cursor cursor)
538}
539declare 136 generic {
540    CONST84_RETURN char *Tk_NameOfFont(Tk_Font font)
541}
542declare 137 generic {
543    CONST84_RETURN char *Tk_NameOfImage(Tk_ImageMaster imageMaster)
544}
545declare 138 generic {
546    CONST84_RETURN char *Tk_NameOfJoinStyle(int join)
547}
548declare 139 generic {
549    CONST84_RETURN char *Tk_NameOfJustify(Tk_Justify justify)
550}
551declare 140 generic {
552    CONST84_RETURN char *Tk_NameOfRelief(int relief)
553}
554declare 141 generic {
555    Tk_Window Tk_NameToWindow(Tcl_Interp *interp,
556	    CONST char *pathName, Tk_Window tkwin)
557}
558declare 142 generic {
559    void Tk_OwnSelection(Tk_Window tkwin,
560	    Atom selection, Tk_LostSelProc *proc,
561	    ClientData clientData)
562}
563declare 143 generic {
564    int Tk_ParseArgv(Tcl_Interp *interp,
565	    Tk_Window tkwin, int *argcPtr, CONST84 char **argv,
566	    Tk_ArgvInfo *argTable, int flags)
567}
568declare 144 generic {
569    void Tk_PhotoPutBlock_NoComposite(Tk_PhotoHandle handle,
570	    Tk_PhotoImageBlock *blockPtr, int x, int y,
571	    int width, int height)
572}
573declare 145 generic {
574    void Tk_PhotoPutZoomedBlock_NoComposite(Tk_PhotoHandle handle,
575	    Tk_PhotoImageBlock *blockPtr, int x, int y,
576	    int width, int height, int zoomX, int zoomY,
577	    int subsampleX, int subsampleY)
578}
579declare 146 generic {
580    int Tk_PhotoGetImage(Tk_PhotoHandle handle, Tk_PhotoImageBlock *blockPtr)
581}
582declare 147 generic {
583    void Tk_PhotoBlank(Tk_PhotoHandle handle)
584}
585declare 148 generic {
586    void Tk_PhotoExpand_Panic(Tk_PhotoHandle handle, int width, int height )
587}
588declare 149 generic {
589    void Tk_PhotoGetSize(Tk_PhotoHandle handle, int *widthPtr, int *heightPtr)
590}
591declare 150 generic {
592    void Tk_PhotoSetSize_Panic(Tk_PhotoHandle handle, int width, int height)
593}
594declare 151 generic {
595    int Tk_PointToChar(Tk_TextLayout layout, int x, int y)
596}
597declare 152 generic {
598    int Tk_PostscriptFontName(Tk_Font tkfont, Tcl_DString *dsPtr)
599}
600declare 153 generic {
601    void Tk_PreserveColormap(Display *display, Colormap colormap)
602}
603declare 154 generic {
604    void Tk_QueueWindowEvent(XEvent *eventPtr, Tcl_QueuePosition position)
605}
606declare 155 generic {
607    void Tk_RedrawImage(Tk_Image image, int imageX,
608	    int imageY, int width, int height,
609	    Drawable drawable, int drawableX, int drawableY)
610}
611declare 156 generic {
612    void Tk_ResizeWindow(Tk_Window tkwin, int width, int height)
613}
614declare 157 generic {
615    int Tk_RestackWindow(Tk_Window tkwin, int aboveBelow, Tk_Window other)
616}
617declare 158 generic {
618    Tk_RestrictProc *Tk_RestrictEvents(Tk_RestrictProc *proc,
619	    ClientData arg, ClientData *prevArgPtr)
620}
621declare 159 generic {
622    int Tk_SafeInit(Tcl_Interp *interp)
623}
624declare 160 generic {
625    CONST char *Tk_SetAppName(Tk_Window tkwin, CONST char *name)
626}
627declare 161 generic {
628    void Tk_SetBackgroundFromBorder(Tk_Window tkwin, Tk_3DBorder border)
629}
630declare 162 generic {
631    void Tk_SetClass(Tk_Window tkwin, CONST char *className)
632}
633declare 163 generic {
634    void Tk_SetGrid(Tk_Window tkwin, int reqWidth, int reqHeight,
635	    int gridWidth, int gridHeight)
636}
637declare 164 generic {
638    void Tk_SetInternalBorder(Tk_Window tkwin, int width)
639}
640declare 165 generic {
641    void Tk_SetWindowBackground(Tk_Window tkwin, unsigned long pixel)
642}
643declare 166 generic {
644    void Tk_SetWindowBackgroundPixmap(Tk_Window tkwin, Pixmap pixmap)
645}
646declare 167 generic {
647    void Tk_SetWindowBorder(Tk_Window tkwin, unsigned long pixel)
648}
649declare 168 generic {
650    void Tk_SetWindowBorderWidth(Tk_Window tkwin, int width)
651}
652declare 169 generic {
653    void Tk_SetWindowBorderPixmap(Tk_Window tkwin, Pixmap pixmap)
654}
655declare 170 generic {
656    void Tk_SetWindowColormap(Tk_Window tkwin, Colormap colormap)
657}
658declare 171 generic {
659    int Tk_SetWindowVisual(Tk_Window tkwin, Visual *visual, int depth,
660	    Colormap colormap)
661}
662declare 172 generic {
663    void Tk_SizeOfBitmap(Display *display, Pixmap bitmap, int *widthPtr,
664	    int *heightPtr)
665}
666declare 173 generic {
667    void Tk_SizeOfImage(Tk_Image image, int *widthPtr, int *heightPtr)
668}
669declare 174 generic {
670    int Tk_StrictMotif(Tk_Window tkwin)
671}
672declare 175 generic {
673    void Tk_TextLayoutToPostscript(Tcl_Interp *interp, Tk_TextLayout layout)
674}
675declare 176 generic {
676    int Tk_TextWidth(Tk_Font font, CONST char *str, int numBytes)
677}
678declare 177 generic {
679    void Tk_UndefineCursor(Tk_Window window)
680}
681declare 178 generic {
682    void Tk_UnderlineChars(Display *display,
683	    Drawable drawable, GC gc, Tk_Font tkfont,
684	    CONST char *source, int x, int y, int firstByte,
685	    int lastByte)
686}
687declare 179 generic {
688    void Tk_UnderlineTextLayout(Display *display, Drawable drawable, GC gc,
689	    Tk_TextLayout layout, int x, int y,
690	    int underline)
691}
692declare 180 generic {
693    void Tk_Ungrab(Tk_Window tkwin)
694}
695declare 181 generic {
696    void Tk_UnmaintainGeometry(Tk_Window slave, Tk_Window master)
697}
698declare 182 generic {
699    void Tk_UnmapWindow(Tk_Window tkwin)
700}
701declare 183 generic {
702    void Tk_UnsetGrid(Tk_Window tkwin)
703}
704declare 184 generic {
705    void Tk_UpdatePointer(Tk_Window tkwin, int x, int y, int state)
706}
707
708# new functions for 8.1
709
710declare 185 generic {
711    Pixmap  Tk_AllocBitmapFromObj(Tcl_Interp *interp, Tk_Window tkwin,
712    Tcl_Obj *objPtr)
713}
714declare 186 generic {
715    Tk_3DBorder Tk_Alloc3DBorderFromObj(Tcl_Interp *interp, Tk_Window tkwin,
716	    Tcl_Obj *objPtr)
717}
718declare 187 generic {
719    XColor *Tk_AllocColorFromObj(Tcl_Interp *interp, Tk_Window tkwin,
720	    Tcl_Obj *objPtr)
721}
722declare 188 generic {
723    Tk_Cursor Tk_AllocCursorFromObj(Tcl_Interp *interp, Tk_Window tkwin,
724	    Tcl_Obj *objPtr)
725}
726declare 189 generic {
727    Tk_Font  Tk_AllocFontFromObj(Tcl_Interp *interp, Tk_Window tkwin,
728	    Tcl_Obj *objPtr)
729
730}
731declare 190 generic {
732    Tk_OptionTable Tk_CreateOptionTable(Tcl_Interp *interp,
733	    CONST Tk_OptionSpec *templatePtr)
734}
735declare 191 generic {
736    void  Tk_DeleteOptionTable(Tk_OptionTable optionTable)
737}
738declare 192 generic {
739    void  Tk_Free3DBorderFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
740}
741declare 193 generic {
742    void  Tk_FreeBitmapFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
743}
744declare 194 generic {
745    void  Tk_FreeColorFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
746}
747declare 195 generic {
748    void  Tk_FreeConfigOptions(char *recordPtr, Tk_OptionTable optionToken,
749	    Tk_Window tkwin)
750
751}
752declare 196 generic {
753    void  Tk_FreeSavedOptions(Tk_SavedOptions *savePtr)
754}
755declare 197 generic {
756    void  Tk_FreeCursorFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
757}
758declare 198 generic {
759    void  Tk_FreeFontFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
760}
761declare 199 generic {
762    Tk_3DBorder Tk_Get3DBorderFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
763}
764declare 200 generic {
765    int	 Tk_GetAnchorFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
766	    Tk_Anchor *anchorPtr)
767}
768declare 201 generic {
769    Pixmap  Tk_GetBitmapFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
770}
771declare 202 generic {
772    XColor *Tk_GetColorFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
773}
774declare 203 generic {
775    Tk_Cursor Tk_GetCursorFromObj(Tk_Window tkwin, Tcl_Obj *objPtr)
776}
777declare 204 generic {
778    Tcl_Obj *Tk_GetOptionInfo(Tcl_Interp *interp,
779	    char *recordPtr, Tk_OptionTable optionTable,
780	    Tcl_Obj *namePtr, Tk_Window tkwin)
781}
782declare 205 generic {
783    Tcl_Obj *Tk_GetOptionValue(Tcl_Interp *interp, char *recordPtr,
784	    Tk_OptionTable optionTable, Tcl_Obj *namePtr, Tk_Window tkwin)
785}
786declare 206 generic {
787    int	 Tk_GetJustifyFromObj(Tcl_Interp *interp,
788	    Tcl_Obj *objPtr, Tk_Justify *justifyPtr)
789}
790declare 207 generic {
791    int	 Tk_GetMMFromObj(Tcl_Interp *interp,
792	    Tk_Window tkwin, Tcl_Obj *objPtr, double *doublePtr)
793}
794declare 208 generic {
795    int	 Tk_GetPixelsFromObj(Tcl_Interp *interp,
796	    Tk_Window tkwin, Tcl_Obj *objPtr, int *intPtr)
797}
798declare 209 generic {
799    int	 Tk_GetReliefFromObj(Tcl_Interp *interp,
800	    Tcl_Obj *objPtr, int *resultPtr)
801}
802declare 210 generic {
803    int	 Tk_GetScrollInfoObj(Tcl_Interp *interp,
804	    int objc, Tcl_Obj *CONST objv[], double *dblPtr, int *intPtr)
805}
806declare 211 generic {
807    int	 Tk_InitOptions(Tcl_Interp *interp, char *recordPtr,
808	    Tk_OptionTable optionToken, Tk_Window tkwin)
809}
810declare 212 generic {
811    void  Tk_MainEx(int argc, char **argv, Tcl_AppInitProc *appInitProc,
812	    Tcl_Interp *interp)
813}
814declare 213 generic {
815    void  Tk_RestoreSavedOptions(Tk_SavedOptions *savePtr)
816}
817declare 214 generic {
818    int	 Tk_SetOptions(Tcl_Interp *interp, char *recordPtr,
819	    Tk_OptionTable optionTable, int objc,
820	    Tcl_Obj *CONST objv[], Tk_Window tkwin,
821	    Tk_SavedOptions *savePtr, int *maskPtr)
822}
823declare 215 generic {
824    void Tk_InitConsoleChannels(Tcl_Interp *interp)
825}
826declare 216 generic {
827    int Tk_CreateConsoleWindow(Tcl_Interp *interp)
828}
829declare 217 generic {
830    void Tk_CreateSmoothMethod(Tcl_Interp *interp, Tk_SmoothMethod *method)
831}
832
833#declare 218 generic {
834#    void Tk_CreateCanvasVisitor(Tcl_Interp *interp, VOID *typePtr)
835#}
836
837#declare 219 generic {
838#    VOID *Tk_GetCanvasVisitor(Tcl_Interp *interp, CONST char *name)
839#}
840
841declare 220 generic {
842    int Tk_GetDash(Tcl_Interp *interp, CONST char *value, Tk_Dash *dash)
843}
844declare 221 generic {
845    void Tk_CreateOutline(Tk_Outline *outline)
846}
847declare 222 generic {
848    void Tk_DeleteOutline(Display *display, Tk_Outline *outline)
849}
850declare 223 generic {
851    int Tk_ConfigOutlineGC(XGCValues *gcValues, Tk_Canvas canvas,
852	    Tk_Item *item, Tk_Outline *outline)
853}
854declare 224 generic {
855    int Tk_ChangeOutlineGC(Tk_Canvas canvas, Tk_Item *item,
856	    Tk_Outline *outline)
857}
858declare 225 generic {
859    int Tk_ResetOutlineGC(Tk_Canvas canvas, Tk_Item *item,
860	    Tk_Outline *outline)
861}
862declare 226 generic {
863    int Tk_CanvasPsOutline(Tk_Canvas canvas, Tk_Item *item,
864	    Tk_Outline *outline)
865}
866declare 227 generic {
867    void Tk_SetTSOrigin(Tk_Window tkwin, GC gc, int x, int y)
868}
869declare 228 generic {
870    int Tk_CanvasGetCoordFromObj(Tcl_Interp *interp, Tk_Canvas canvas,
871	    Tcl_Obj *obj, double *doublePtr)
872}
873declare 229 generic {
874    void Tk_CanvasSetOffset(Tk_Canvas canvas, GC gc, Tk_TSOffset *offset)
875}
876declare 230 generic {
877    void Tk_DitherPhoto(Tk_PhotoHandle handle, int x, int y, int width,
878	    int height)
879}
880declare 231 generic {
881    int Tk_PostscriptBitmap(Tcl_Interp *interp, Tk_Window tkwin,
882	    Tk_PostscriptInfo psInfo, Pixmap bitmap, int startX,
883	    int startY, int width, int height)
884}
885declare 232 generic {
886    int Tk_PostscriptColor(Tcl_Interp *interp, Tk_PostscriptInfo psInfo,
887	    XColor *colorPtr)
888}
889declare 233 generic {
890    int Tk_PostscriptFont(Tcl_Interp *interp, Tk_PostscriptInfo psInfo,
891	    Tk_Font font)
892}
893declare 234 generic {
894    int Tk_PostscriptImage(Tk_Image image, Tcl_Interp *interp,
895	    Tk_Window tkwin, Tk_PostscriptInfo psinfo, int x, int y,
896	    int width, int height, int prepass)
897}
898declare 235 generic {
899    void Tk_PostscriptPath(Tcl_Interp *interp, Tk_PostscriptInfo psInfo,
900	    double *coordPtr, int numPoints)
901}
902declare 236 generic {
903    int Tk_PostscriptStipple(Tcl_Interp *interp, Tk_Window tkwin,
904	    Tk_PostscriptInfo psInfo, Pixmap bitmap)
905}
906declare 237 generic {
907    double Tk_PostscriptY(double y, Tk_PostscriptInfo psInfo)
908}
909declare 238 generic {
910    int	Tk_PostscriptPhoto(Tcl_Interp *interp,
911	    Tk_PhotoImageBlock *blockPtr, Tk_PostscriptInfo psInfo,
912	    int width, int height)
913}
914
915# New in 8.4a1
916#
917declare 239 generic {
918    void Tk_CreateClientMessageHandler(Tk_ClientMessageProc *proc)
919}
920declare 240 generic {
921    void Tk_DeleteClientMessageHandler(Tk_ClientMessageProc *proc)
922}
923
924# New in 8.4a2
925#
926declare 241 generic {
927    Tk_Window Tk_CreateAnonymousWindow(Tcl_Interp *interp,
928	    Tk_Window parent, CONST char *screenName)
929}
930declare 242 generic {
931    void Tk_SetClassProcs(Tk_Window tkwin,
932	    Tk_ClassProcs *procs, ClientData instanceData)
933}
934
935# New in 8.4a4
936#
937declare 243 generic {
938    void Tk_SetInternalBorderEx(Tk_Window tkwin, int left, int right,
939	    int top, int bottom)
940}
941declare 244 generic {
942    void Tk_SetMinimumRequestSize(Tk_Window tkwin,
943	    int minWidth, int minHeight)
944}
945
946# New in 8.4a5
947#
948declare 245 generic {
949    void Tk_SetCaretPos(Tk_Window tkwin, int x, int y, int height)
950}
951declare 246 generic {
952    void Tk_PhotoPutBlock_Panic(Tk_PhotoHandle handle,
953	    Tk_PhotoImageBlock *blockPtr, int x, int y,
954	    int width, int height, int compRule)
955}
956declare 247 generic {
957    void Tk_PhotoPutZoomedBlock_Panic(Tk_PhotoHandle handle,
958	    Tk_PhotoImageBlock *blockPtr, int x, int y,
959	    int width, int height, int zoomX, int zoomY,
960	    int subsampleX, int subsampleY, int compRule)
961}
962declare 248 generic {
963    int Tk_CollapseMotionEvents(Display *display, int collapse)
964}
965
966# Style engine
967declare 249 generic {
968    Tk_StyleEngine Tk_RegisterStyleEngine(CONST char *name,
969	    Tk_StyleEngine parent)
970}
971declare 250 generic {
972    Tk_StyleEngine Tk_GetStyleEngine(CONST char *name)
973}
974declare 251 generic {
975    int Tk_RegisterStyledElement(Tk_StyleEngine engine,
976	    Tk_ElementSpec *templatePtr)
977}
978declare 252 generic {
979    int Tk_GetElementId(CONST char *name)
980}
981declare 253 generic {
982    Tk_Style Tk_CreateStyle(CONST char *name, Tk_StyleEngine engine,
983	    ClientData clientData)
984}
985declare 254 generic {
986    Tk_Style Tk_GetStyle(Tcl_Interp *interp, CONST char *name)
987}
988declare 255 generic {
989    void Tk_FreeStyle(Tk_Style style)
990}
991declare 256 generic {
992    CONST char *Tk_NameOfStyle(Tk_Style style)
993}
994declare 257 generic {
995    Tk_Style  Tk_AllocStyleFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr)
996}
997declare 258 generic {
998    Tk_Style Tk_GetStyleFromObj(Tcl_Obj *objPtr)
999}
1000declare 259 generic {
1001    void  Tk_FreeStyleFromObj(Tcl_Obj *objPtr)
1002}
1003declare 260 generic {
1004    Tk_StyledElement Tk_GetStyledElement(Tk_Style style, int elementId,
1005	Tk_OptionTable optionTable)
1006}
1007declare 261 generic {
1008    void Tk_GetElementSize(Tk_Style style, Tk_StyledElement element,
1009	    char *recordPtr, Tk_Window tkwin, int width, int height,
1010	    int inner, int *widthPtr, int *heightPtr)
1011}
1012declare 262 generic {
1013    void Tk_GetElementBox(Tk_Style style, Tk_StyledElement element,
1014	    char *recordPtr, Tk_Window tkwin, int x, int y, int width,
1015	    int height, int inner, int *xPtr, int *yPtr, int *widthPtr,
1016	    int *heightPtr)
1017}
1018declare 263 generic {
1019    int Tk_GetElementBorderWidth(Tk_Style style, Tk_StyledElement element,
1020	    char *recordPtr, Tk_Window tkwin)
1021}
1022declare 264 generic {
1023    void Tk_DrawElement(Tk_Style style, Tk_StyledElement element,
1024	    char *recordPtr, Tk_Window tkwin, Drawable d, int x, int y,
1025	    int width, int height, int state)
1026}
1027
1028# TIP#116
1029declare 265 generic {
1030    int Tk_PhotoExpand(Tcl_Interp *interp, Tk_PhotoHandle handle,
1031	    int width, int height)
1032}
1033declare 266 generic {
1034    int Tk_PhotoPutBlock(Tcl_Interp *interp, Tk_PhotoHandle handle,
1035	    Tk_PhotoImageBlock *blockPtr, int x, int y, int width, int height,
1036	    int compRule)
1037}
1038declare 267 generic {
1039    int Tk_PhotoPutZoomedBlock(Tcl_Interp *interp, Tk_PhotoHandle handle,
1040	    Tk_PhotoImageBlock *blockPtr, int x, int y, int width, int height,
1041	    int zoomX, int zoomY, int subsampleX, int subsampleY, int compRule)
1042}
1043declare 268 generic {
1044    int Tk_PhotoSetSize(Tcl_Interp *interp, Tk_PhotoHandle handle,
1045	    int width, int height)
1046}
1047# TIP#245
1048declare 269 generic {
1049    long Tk_GetUserInactiveTime(Display *dpy)
1050}
1051declare 270 generic {
1052    void Tk_ResetUserInactiveTime(Display *dpy)
1053}
1054
1055# TIP #264
1056declare 271 generic {
1057    Tcl_Interp *Tk_Interp(Tk_Window tkwin)
1058}
1059
1060# Now that the Tk 8.2 -> 8.3 transition is long past, use more conventional
1061# means to continue support for extensions using the USE_OLD_IMAGE to
1062# continue use of their string-based Tcl_ImageTypes and Tcl_PhotoImageFormats.
1063#
1064# Note that this restores the usual rules for stub compatibility.  Stub-enabled
1065# extensions compiled against 8.5 headers and linked to the 8.5 stub library
1066# will produce a file [load]able into an interp with Tk 8.X, for X >= 5.
1067# It will *not* be [load]able into interps with Tk 8.4 (or Tk 8.2!).
1068# Developers who need to produce a file [load]able into legacy interps must
1069# build against legacy sources.
1070declare 272 generic {
1071    void Tk_CreateOldImageType(Tk_ImageType *typePtr)
1072}
1073declare 273 generic {
1074    void Tk_CreateOldPhotoImageFormat(Tk_PhotoImageFormat *formatPtr)
1075}
1076
1077# Define the platform specific public Tk interface.  These functions are
1078# only available on the designated platform.
1079
1080interface tkPlat
1081
1082################################
1083# Unix specific functions
1084#   (none)
1085
1086################################
1087# Windows specific functions
1088
1089declare 0 win {
1090    Window Tk_AttachHWND(Tk_Window tkwin, HWND hwnd)
1091}
1092declare 1 win {
1093    HINSTANCE Tk_GetHINSTANCE(void)
1094}
1095declare 2 win {
1096    HWND Tk_GetHWND(Window window)
1097}
1098declare 3 win {
1099    Tk_Window Tk_HWNDToWindow(HWND hwnd)
1100}
1101declare 4 win {
1102    void Tk_PointerEvent(HWND hwnd, int x, int y)
1103}
1104declare 5 win {
1105    int Tk_TranslateWinEvent(HWND hwnd,
1106	    UINT message, WPARAM wParam, LPARAM lParam, LRESULT *result)
1107}
1108
1109################################
1110# Aqua specific functions
1111
1112declare 0 aqua {
1113    void Tk_MacOSXSetEmbedHandler(
1114	    Tk_MacOSXEmbedRegisterWinProc *registerWinProcPtr,
1115	    Tk_MacOSXEmbedGetGrafPortProc *getPortProcPtr,
1116	    Tk_MacOSXEmbedMakeContainerExistProc *containerExistProcPtr,
1117	    Tk_MacOSXEmbedGetClipProc *getClipProc,
1118	    Tk_MacOSXEmbedGetOffsetInParentProc *getOffsetProc)
1119}
1120declare 1 aqua {
1121    void Tk_MacOSXTurnOffMenus(void)
1122}
1123declare 2 aqua {
1124    void Tk_MacOSXTkOwnsCursor(int tkOwnsIt)
1125}
1126declare 3 aqua {
1127    void TkMacOSXInitMenus(Tcl_Interp *interp)
1128}
1129declare 4 aqua {
1130    void TkMacOSXInitAppleEvents(Tcl_Interp *interp)
1131}
1132declare 5 aqua {
1133    void TkGenWMConfigureEvent(Tk_Window tkwin, int x, int y, int width,
1134	    int height, int flags)
1135}
1136declare 6 aqua {
1137    void TkMacOSXInvalClipRgns(Tk_Window tkwin)
1138}
1139declare 7 aqua {
1140    void *TkMacOSXGetDrawablePort(Drawable drawable)
1141}
1142declare 8 aqua {
1143    void *TkMacOSXGetRootControl(Drawable drawable)
1144}
1145declare 9 aqua {
1146    void Tk_MacOSXSetupTkNotifier(void)
1147}
1148declare 10 aqua {
1149    int Tk_MacOSXIsAppInFront(void)
1150}
1151
1152##############################################################################
1153
1154# Public functions that are not accessible via the stubs table.
1155
1156export {
1157    CONST char *Tk_InitStubs(Tcl_Interp *interp, CONST char *version,
1158	    int exact)
1159}
1160export {
1161    CONST char *Tk_PkgInitStubsCheck(Tcl_Interp *interp, CONST char *version,
1162	    int exact)
1163}
1164
1165# Global variables that need to be exported from the tcl shared library.
1166
1167export {
1168    TkStubs *tkStubsPtr                         (fool checkstubs)
1169}
1170export {
1171    TkPlatStubs *tkPlatStubsPtr                 (fool checkstubs)
1172}
1173export {
1174    TkIntStubs *tkIntStubsPtr                   (fool checkstubs)
1175}
1176export {
1177    TkIntPlatStubs *tkIntPlatStubsPtr           (fool checkstubs)
1178}
1179export {
1180    TkIntXlibStubs *tkIntXlibStubsPtr           (fool checkstubs)
1181}
1182