1 /*******************************************************************************
2  * Copyright (c) 2000, 2008 IBM Corporation and others. All rights reserved.
3  * The contents of this file are made available under the terms
4  * of the GNU Lesser General Public License (LGPL) Version 2.1 that
5  * accompanies this distribution (lgpl-v21.txt).  The LGPL is also
6  * available at http://www.gnu.org/licenses/lgpl.html.  If the version
7  * of the LGPL at http://www.gnu.org is different to the version of
8  * the LGPL accompanying this distribution and there is any conflict
9  * between the two license versions, the terms of the LGPL accompanying
10  * this distribution shall govern.
11  *
12  * Contributors:
13  *     IBM Corporation - initial API and implementation
14  * Port to the D programming language:
15  *     Frank Benoit <benoit@tionex.de>
16  *     John Reimer <terminal.node@gmail.com>
17  *******************************************************************************/
18 module org.eclipse.swt.internal.gtk.OS;
19 
20 import java.lang.all;
21 
22 import org.eclipse.swt.internal.Platform;
23 version(Tango){
24     import tango.core.Traits;
25     import tango.stdc.locale;
26     import tango.stdc.posix.stdlib : realpath;
27     static import tango.stdc..string;
28 } else { // Phobos
29     import std.traits;
30     import core.sys.posix.stdlib : realpath;
31     import core.stdc.locale;
32     static import core.stdc..string;
33 }
34 
35 import  org.eclipse.swt.internal.c.gtk,
36         org.eclipse.swt.internal.c.gdk,
37         org.eclipse.swt.internal.c.gdkx,
38         org.eclipse.swt.internal.c.atk,
39         org.eclipse.swt.internal.c.cairo,
40         org.eclipse.swt.internal.c.pango,
41         org.eclipse.swt.internal.c.pangocairo,
42         org.eclipse.swt.internal.c.gtk_unix_print_2_0,
43         org.eclipse.swt.internal.c.Xlib,
44         org.eclipse.swt.internal.c.XTest,
45         org.eclipse.swt.internal.c.Xrender,
46         org.eclipse.swt.internal.c.glib_object;
47 
48 //version=GTK_DYN_LINK;
49 
50 public alias org.eclipse.swt.internal.c.glib_object.GPollFD GPollFD;
51 public alias org.eclipse.swt.internal.c.glib_object.GClosure GClosure;
52 public alias org.eclipse.swt.internal.c.glib_object.GList GList;
53 public alias org.eclipse.swt.internal.c.glib_object.gpointer gpointer;
54 public alias org.eclipse.swt.internal.c.glib_object.GObject GObject;
55 public alias org.eclipse.swt.internal.c.glib_object.GTypeInfo GTypeInfo;
56 public alias org.eclipse.swt.internal.c.glib_object.GCallback GCallback;
57 public alias org.eclipse.swt.internal.c.glib_object.GClosureNotify GClosureNotify;
58 public alias org.eclipse.swt.internal.c.glib_object.GPollFunc GPollFunc;
59 public alias org.eclipse.swt.internal.c.glib_object.GTypeInstance GTypeInstance;
60 public alias org.eclipse.swt.internal.c.glib_object.GObjectClass GObjectClass;
61 public alias org.eclipse.swt.internal.c.glib_object.GTypeClass GTypeClass;
62 public alias org.eclipse.swt.internal.c.glib_object.GInterfaceInfo GInterfaceInfo;
63 public alias org.eclipse.swt.internal.c.glib_object.GTypeQuery GTypeQuery;
64 public alias org.eclipse.swt.internal.c.glib_object.GError GError;
65 public alias org.eclipse.swt.internal.c.glib_object.GSignalEmissionHook GSignalEmissionHook;
66 public alias org.eclipse.swt.internal.c.glib_object.GSignalInvocationHint GSignalInvocationHint;
67 public alias org.eclipse.swt.internal.c.glib_object.GValue GValue;
68 
69 public alias org.eclipse.swt.internal.c.gdk.GdkBitmap GdkBitmap;
70 public alias org.eclipse.swt.internal.c.gdk.GdkColor GdkColor;
71 public alias org.eclipse.swt.internal.c.gdk.GdkCursor GdkCursor;
72 public alias org.eclipse.swt.internal.c.gdk.GdkDisplay GdkDisplay;
73 public alias org.eclipse.swt.internal.c.gdk.GdkDragContext GdkDragContext;
74 public alias org.eclipse.swt.internal.c.gdk.GdkDrawable GdkDrawable;
75 public alias org.eclipse.swt.internal.c.gdk.GdkEvent GdkEvent;
76 public alias org.eclipse.swt.internal.c.gdk.GdkEventAny GdkEventAny;
77 public alias org.eclipse.swt.internal.c.gdk.GdkEventButton GdkEventButton;
78 public alias org.eclipse.swt.internal.c.gdk.GdkEventCrossing GdkEventCrossing;
79 public alias org.eclipse.swt.internal.c.gdk.GdkEventExpose GdkEventExpose;
80 public alias org.eclipse.swt.internal.c.gdk.GdkEventFocus GdkEventFocus;
81 public alias org.eclipse.swt.internal.c.gdk.GdkEventKey GdkEventKey;
82 public alias org.eclipse.swt.internal.c.gdk.GdkEventMotion GdkEventMotion;
83 public alias org.eclipse.swt.internal.c.gdk.GdkEventScroll GdkEventScroll;
84 public alias org.eclipse.swt.internal.c.gdk.GdkEventVisibility GdkEventVisibility;
85 public alias org.eclipse.swt.internal.c.gdk.GdkEventWindowState GdkEventWindowState;
86 public alias org.eclipse.swt.internal.c.gdk.GdkGC GdkGC;
87 public alias org.eclipse.swt.internal.c.gdk.GdkGCValues GdkGCValues;
88 public alias org.eclipse.swt.internal.c.gdk.GdkGeometry GdkGeometry;
89 public alias org.eclipse.swt.internal.c.gdk.GdkImage GdkImage;
90 public alias org.eclipse.swt.internal.c.gdk.GdkPixbuf GdkPixbuf;
91 public alias org.eclipse.swt.internal.c.gdk.GdkPixmap GdkPixmap;
92 public alias org.eclipse.swt.internal.c.gdk.GdkPoint GdkPoint;
93 public alias org.eclipse.swt.internal.c.gdk.GdkRectangle GdkRectangle;
94 public alias org.eclipse.swt.internal.c.gdk.GdkRegion GdkRegion;
95 public alias org.eclipse.swt.internal.c.gdk.GdkWindow GdkWindow;
96 public alias org.eclipse.swt.internal.c.gdk.GdkWindowAttr GdkWindowAttr;
97 public alias org.eclipse.swt.internal.c.gdk.GdkXEvent GdkXEvent;
98 
99 public alias org.eclipse.swt.internal.c.pango.PangoAttrColor PangoAttrColor;
100 public alias org.eclipse.swt.internal.c.pango.PangoAttribute PangoAttribute;
101 public alias org.eclipse.swt.internal.c.pango.PangoAttrList PangoAttrList;
102 public alias org.eclipse.swt.internal.c.pango.PangoAttrInt PangoAttrInt;
103 public alias org.eclipse.swt.internal.c.pango.PangoContext PangoContext;
104 public alias org.eclipse.swt.internal.c.pango.PangoFontDescription PangoFontDescription;
105 public alias org.eclipse.swt.internal.c.pango.PangoFontFace PangoFontFace;
106 public alias org.eclipse.swt.internal.c.pango.PangoFontFamily PangoFontFamily;
107 public alias org.eclipse.swt.internal.c.pango.PangoItem PangoItem;
108 public alias org.eclipse.swt.internal.c.pango.PangoLogAttr PangoLogAttr;
109 public alias org.eclipse.swt.internal.c.pango.PangoLayout PangoLayout;
110 public alias org.eclipse.swt.internal.c.pango.PangoLayoutLine PangoLayoutLine;
111 public alias org.eclipse.swt.internal.c.pango.PangoLayoutRun PangoLayoutRun;
112 public alias org.eclipse.swt.internal.c.pango.PangoRectangle PangoRectangle;
113 public alias org.eclipse.swt.internal.c.pango.PangoTabArray PangoTabArray;
114 
115 public alias org.eclipse.swt.internal.c.cairo.cairo_t cairo_t;
116 public alias org.eclipse.swt.internal.c.cairo.cairo_pattern_t cairo_pattern_t;
117 public alias org.eclipse.swt.internal.c.cairo.cairo_surface_t cairo_surface_t;
118 public alias org.eclipse.swt.internal.c.cairo.cairo_text_extents_t cairo_text_extents_t;
119 public alias org.eclipse.swt.internal.c.cairo.cairo_font_extents_t cairo_font_extents_t;
120 public alias org.eclipse.swt.internal.c.cairo.cairo_matrix_t cairo_matrix_t;
121 public alias org.eclipse.swt.internal.c.cairo.cairo_path_t cairo_path_t;
122 public alias org.eclipse.swt.internal.c.cairo.cairo_path_data_t cairo_path_data_t;
123 
124 public alias org.eclipse.swt.internal.c.gtk.GtkVSeparatorClass GtkVSeparatorClass;
125 public alias org.eclipse.swt.internal.c.gtk.GtkVSeparator GtkVSeparator;
126 public alias org.eclipse.swt.internal.c.gtk.GtkVScaleClass GtkVScaleClass;
127 public alias org.eclipse.swt.internal.c.gtk.GtkVScale GtkVScale;
128 public alias org.eclipse.swt.internal.c.gtk.GtkVRulerClass GtkVRulerClass;
129 public alias org.eclipse.swt.internal.c.gtk.GtkVRuler GtkVRuler;
130 public alias org.eclipse.swt.internal.c.gtk.GtkVPanedClass GtkVPanedClass;
131 public alias org.eclipse.swt.internal.c.gtk.GtkVPaned GtkVPaned;
132 public alias org.eclipse.swt.internal.c.gtk.GtkVolumeButtonClass GtkVolumeButtonClass;
133 public alias org.eclipse.swt.internal.c.gtk.GtkVButtonBoxClass GtkVButtonBoxClass;
134 public alias org.eclipse.swt.internal.c.gtk.GtkVButtonBox GtkVButtonBox;
135 public alias org.eclipse.swt.internal.c.gtk.GtkUIManagerClass GtkUIManagerClass;
136 public alias org.eclipse.swt.internal.c.gtk.GtkUIManager GtkUIManager;
137 public alias org.eclipse.swt.internal.c.gtk.GtkTreeStoreClass GtkTreeStoreClass;
138 public alias org.eclipse.swt.internal.c.gtk.GtkTreeStore GtkTreeStore;
139 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModelSortClass GtkTreeModelSortClass;
140 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModelSort GtkTreeModelSort;
141 public alias org.eclipse.swt.internal.c.gtk.GtkTreeDragDestIface GtkTreeDragDestIface;
142 public alias org.eclipse.swt.internal.c.gtk.GtkTreeDragSourceIface GtkTreeDragSourceIface;
143 public alias org.eclipse.swt.internal.c.gtk.GtkToolbarClass GtkToolbarClass;
144 public alias org.eclipse.swt.internal.c.gtk.GtkToolbar GtkToolbar;
145 public alias org.eclipse.swt.internal.c.gtk.GtkToolbarChild GtkToolbarChild;
146 public alias org.eclipse.swt.internal.c.gtk.GtkTipsQueryClass GtkTipsQueryClass;
147 public alias org.eclipse.swt.internal.c.gtk.GtkTipsQuery GtkTipsQuery;
148 public alias org.eclipse.swt.internal.c.gtk.GtkTextViewClass GtkTextViewClass;
149 public alias org.eclipse.swt.internal.c.gtk.GtkTextView GtkTextView;
150 public alias org.eclipse.swt.internal.c.gtk.GtkTextBufferClass GtkTextBufferClass;
151 public alias org.eclipse.swt.internal.c.gtk.GtkTextMarkClass GtkTextMarkClass;
152 public alias org.eclipse.swt.internal.c.gtk.GtkTextMark GtkTextMark;
153 public alias org.eclipse.swt.internal.c.gtk.GtkTextTagTableClass GtkTextTagTableClass;
154 public alias org.eclipse.swt.internal.c.gtk.GtkTearoffMenuItemClass GtkTearoffMenuItemClass;
155 public alias org.eclipse.swt.internal.c.gtk.GtkTearoffMenuItem GtkTearoffMenuItem;
156 public alias org.eclipse.swt.internal.c.gtk.GtkTableRowCol GtkTableRowCol;
157 public alias org.eclipse.swt.internal.c.gtk.GtkTableChild GtkTableChild;
158 public alias org.eclipse.swt.internal.c.gtk.GtkTableClass GtkTableClass;
159 public alias org.eclipse.swt.internal.c.gtk.GtkTable GtkTable;
160 public alias org.eclipse.swt.internal.c.gtk.GtkStockItem GtkStockItem;
161 public alias org.eclipse.swt.internal.c.gtk.GtkStatusIconClass GtkStatusIconClass;
162 public alias org.eclipse.swt.internal.c.gtk.GtkStatusIcon GtkStatusIcon;
163 public alias org.eclipse.swt.internal.c.gtk.GtkStatusbarClass GtkStatusbarClass;
164 public alias org.eclipse.swt.internal.c.gtk.GtkStatusbar GtkStatusbar;
165 public alias org.eclipse.swt.internal.c.gtk.GtkSpinButtonClass GtkSpinButtonClass;
166 public alias org.eclipse.swt.internal.c.gtk.GtkSpinButton GtkSpinButton;
167 public alias org.eclipse.swt.internal.c.gtk.GtkSizeGroupClass GtkSizeGroupClass;
168 public alias org.eclipse.swt.internal.c.gtk.GtkSizeGroup GtkSizeGroup;
169 public alias org.eclipse.swt.internal.c.gtk.GtkSeparatorToolItemClass GtkSeparatorToolItemClass;
170 public alias org.eclipse.swt.internal.c.gtk.GtkSeparatorToolItem GtkSeparatorToolItem;
171 public alias org.eclipse.swt.internal.c.gtk.GtkSeparatorMenuItemClass GtkSeparatorMenuItemClass;
172 public alias org.eclipse.swt.internal.c.gtk.GtkSeparatorMenuItem GtkSeparatorMenuItem;
173 public alias org.eclipse.swt.internal.c.gtk.GtkScrolledWindowClass GtkScrolledWindowClass;
174 public alias org.eclipse.swt.internal.c.gtk.GtkScrolledWindow GtkScrolledWindow;
175 public alias org.eclipse.swt.internal.c.gtk.GtkViewportClass GtkViewportClass;
176 public alias org.eclipse.swt.internal.c.gtk.GtkViewport GtkViewport;
177 public alias org.eclipse.swt.internal.c.gtk.GtkScaleButtonClass GtkScaleButtonClass;
178 public alias org.eclipse.swt.internal.c.gtk.GtkScaleButton GtkScaleButton;
179 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserWidgetClass GtkRecentChooserWidgetClass;
180 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserWidget GtkRecentChooserWidget;
181 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserMenuClass GtkRecentChooserMenuClass;
182 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserMenu GtkRecentChooserMenu;
183 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserDialogClass GtkRecentChooserDialogClass;
184 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserDialog GtkRecentChooserDialog;
185 public alias org.eclipse.swt.internal.c.gtk.GtkRecentChooserIface GtkRecentChooserIface;
186 public alias org.eclipse.swt.internal.c.gtk.GtkRecentFilterInfo GtkRecentFilterInfo;
187 public alias org.eclipse.swt.internal.c.gtk.GtkRecentActionClass GtkRecentActionClass;
188 public alias org.eclipse.swt.internal.c.gtk.GtkRecentAction GtkRecentAction;
189 public alias org.eclipse.swt.internal.c.gtk.GtkRecentManagerClass GtkRecentManagerClass;
190 public alias org.eclipse.swt.internal.c.gtk.GtkRecentManager GtkRecentManager;
191 public alias org.eclipse.swt.internal.c.gtk.GtkRecentData GtkRecentData;
192 public alias org.eclipse.swt.internal.c.gtk.GtkRadioToolButtonClass GtkRadioToolButtonClass;
193 public alias org.eclipse.swt.internal.c.gtk.GtkRadioToolButton GtkRadioToolButton;
194 public alias org.eclipse.swt.internal.c.gtk.GtkToggleToolButtonClass GtkToggleToolButtonClass;
195 public alias org.eclipse.swt.internal.c.gtk.GtkToggleToolButton GtkToggleToolButton;
196 public alias org.eclipse.swt.internal.c.gtk.GtkRadioMenuItemClass GtkRadioMenuItemClass;
197 public alias org.eclipse.swt.internal.c.gtk.GtkRadioMenuItem GtkRadioMenuItem;
198 public alias org.eclipse.swt.internal.c.gtk.GtkRadioButtonClass GtkRadioButtonClass;
199 public alias org.eclipse.swt.internal.c.gtk.GtkRadioButton GtkRadioButton;
200 public alias org.eclipse.swt.internal.c.gtk.GtkRadioActionClass GtkRadioActionClass;
201 public alias org.eclipse.swt.internal.c.gtk.GtkRadioAction GtkRadioAction;
202 public alias org.eclipse.swt.internal.c.gtk.GtkToggleActionClass GtkToggleActionClass;
203 public alias org.eclipse.swt.internal.c.gtk.GtkToggleAction GtkToggleAction;
204 public alias org.eclipse.swt.internal.c.gtk.GtkProgressBarClass GtkProgressBarClass;
205 public alias org.eclipse.swt.internal.c.gtk.GtkProgressBar GtkProgressBar;
206 public alias org.eclipse.swt.internal.c.gtk.GtkProgressClass GtkProgressClass;
207 public alias org.eclipse.swt.internal.c.gtk.GtkProgress GtkProgress;
208 public alias org.eclipse.swt.internal.c.gtk.GtkPrintOperation GtkPrintOperation;
209 public alias org.eclipse.swt.internal.c.gtk.GtkPrintOperationClass GtkPrintOperationClass;
210 public alias org.eclipse.swt.internal.c.gtk.GtkPrintOperationPreviewIface GtkPrintOperationPreviewIface;
211 public alias org.eclipse.swt.internal.c.gtk.GtkPageRange GtkPageRange;
212 public alias org.eclipse.swt.internal.c.gtk.GtkPreviewClass GtkPreviewClass;
213 public alias org.eclipse.swt.internal.c.gtk.GtkPreviewInfo GtkPreviewInfo;
214 public alias org.eclipse.swt.internal.c.gtk.GtkPreview GtkPreview;
215 public alias org.eclipse.swt.internal.c.gtk.GtkPlugClass GtkPlugClass;
216 public alias org.eclipse.swt.internal.c.gtk.GtkPlug GtkPlug;
217 public alias org.eclipse.swt.internal.c.gtk.GtkSocketClass GtkSocketClass;
218 public alias org.eclipse.swt.internal.c.gtk.GtkSocket GtkSocket;
219 public alias org.eclipse.swt.internal.c.gtk.GtkPixmapClass GtkPixmapClass;
220 public alias org.eclipse.swt.internal.c.gtk.GtkPixmap GtkPixmap;
221 public alias org.eclipse.swt.internal.c.gtk.GtkOptionMenuClass GtkOptionMenuClass;
222 public alias org.eclipse.swt.internal.c.gtk.GtkOptionMenu GtkOptionMenu;
223 public alias org.eclipse.swt.internal.c.gtk.GtkOldEditableClass GtkOldEditableClass;
224 public alias org.eclipse.swt.internal.c.gtk.GtkOldEditable GtkOldEditable;
225 public alias org.eclipse.swt.internal.c.gtk.GtkNotebookClass GtkNotebookClass;
226 public alias org.eclipse.swt.internal.c.gtk.GtkNotebook GtkNotebook;
227 public alias org.eclipse.swt.internal.c.gtk.GtkMessageDialogClass GtkMessageDialogClass;
228 public alias org.eclipse.swt.internal.c.gtk.GtkMessageDialog GtkMessageDialog;
229 public alias org.eclipse.swt.internal.c.gtk.GtkMenuToolButton GtkMenuToolButton;
230 public alias org.eclipse.swt.internal.c.gtk.GtkMenuToolButtonClass GtkMenuToolButtonClass;
231 public alias org.eclipse.swt.internal.c.gtk.GtkToolButtonClass GtkToolButtonClass;
232 public alias org.eclipse.swt.internal.c.gtk.GtkToolButton GtkToolButton;
233 public alias org.eclipse.swt.internal.c.gtk.GtkToolItemClass GtkToolItemClass;
234 public alias org.eclipse.swt.internal.c.gtk.GtkToolItem GtkToolItem;
235 public alias org.eclipse.swt.internal.c.gtk.GtkTooltipsData GtkTooltipsData;
236 public alias org.eclipse.swt.internal.c.gtk.GtkTooltipsClass GtkTooltipsClass;
237 public alias org.eclipse.swt.internal.c.gtk.GtkTooltips GtkTooltips;
238 public alias org.eclipse.swt.internal.c.gtk.GtkMenuBarClass GtkMenuBarClass;
239 public alias org.eclipse.swt.internal.c.gtk.GtkMenuBar GtkMenuBar;
240 public alias org.eclipse.swt.internal.c.gtk.GtkListClass GtkListClass;
241 public alias org.eclipse.swt.internal.c.gtk.GtkList GtkList;
242 public alias org.eclipse.swt.internal.c.gtk.GtkListItemClass GtkListItemClass;
243 public alias org.eclipse.swt.internal.c.gtk.GtkListItem GtkListItem;
244 public alias org.eclipse.swt.internal.c.gtk.GtkLinkButtonClass GtkLinkButtonClass;
245 public alias org.eclipse.swt.internal.c.gtk.GtkLinkButton GtkLinkButton;
246 public alias org.eclipse.swt.internal.c.gtk.GtkLayoutClass GtkLayoutClass;
247 public alias org.eclipse.swt.internal.c.gtk.GtkLayout GtkLayout;
248 public alias org.eclipse.swt.internal.c.gtk.GtkInvisibleClass GtkInvisibleClass;
249 public alias org.eclipse.swt.internal.c.gtk.GtkInvisible GtkInvisible;
250 public alias org.eclipse.swt.internal.c.gtk.GtkInputDialogClass GtkInputDialogClass;
251 public alias org.eclipse.swt.internal.c.gtk.GtkInputDialog GtkInputDialog;
252 public alias org.eclipse.swt.internal.c.gtk.GtkIMMulticontextClass GtkIMMulticontextClass;
253 public alias org.eclipse.swt.internal.c.gtk.GtkIMMulticontext GtkIMMulticontext;
254 public alias org.eclipse.swt.internal.c.gtk.GtkIMContextSimpleClass GtkIMContextSimpleClass;
255 public alias org.eclipse.swt.internal.c.gtk.GtkIMContextSimple GtkIMContextSimple;
256 public alias org.eclipse.swt.internal.c.gtk.GtkImageMenuItemClass GtkImageMenuItemClass;
257 public alias org.eclipse.swt.internal.c.gtk.GtkImageMenuItem GtkImageMenuItem;
258 public alias org.eclipse.swt.internal.c.gtk.GtkIconViewClass GtkIconViewClass;
259 public alias org.eclipse.swt.internal.c.gtk.GtkIconView GtkIconView;
260 public alias org.eclipse.swt.internal.c.gtk.GtkIconThemeClass GtkIconThemeClass;
261 public alias org.eclipse.swt.internal.c.gtk.GtkIconTheme GtkIconTheme;
262 public alias org.eclipse.swt.internal.c.gtk.GtkIconFactoryClass GtkIconFactoryClass;
263 public alias org.eclipse.swt.internal.c.gtk.GtkHSeparatorClass GtkHSeparatorClass;
264 public alias org.eclipse.swt.internal.c.gtk.GtkHSeparator GtkHSeparator;
265 public alias org.eclipse.swt.internal.c.gtk.GtkSeparatorClass GtkSeparatorClass;
266 public alias org.eclipse.swt.internal.c.gtk.GtkSeparator GtkSeparator;
267 public alias org.eclipse.swt.internal.c.gtk.GtkHScaleClass GtkHScaleClass;
268 public alias org.eclipse.swt.internal.c.gtk.GtkHScale GtkHScale;
269 public alias org.eclipse.swt.internal.c.gtk.GtkScaleClass GtkScaleClass;
270 public alias org.eclipse.swt.internal.c.gtk.GtkScale GtkScale;
271 public alias org.eclipse.swt.internal.c.gtk.GtkHRulerClass GtkHRulerClass;
272 public alias org.eclipse.swt.internal.c.gtk.GtkHRuler GtkHRuler;
273 public alias org.eclipse.swt.internal.c.gtk.GtkRulerMetric GtkRulerMetric;
274 public alias org.eclipse.swt.internal.c.gtk.GtkRulerClass GtkRulerClass;
275 public alias org.eclipse.swt.internal.c.gtk.GtkRuler GtkRuler;
276 public alias org.eclipse.swt.internal.c.gtk.GtkHPanedClass GtkHPanedClass;
277 public alias org.eclipse.swt.internal.c.gtk.GtkHPaned GtkHPaned;
278 public alias org.eclipse.swt.internal.c.gtk.GtkPanedClass GtkPanedClass;
279 public alias org.eclipse.swt.internal.c.gtk.GtkPaned GtkPaned;
280 public alias org.eclipse.swt.internal.c.gtk.GtkHButtonBoxClass GtkHButtonBoxClass;
281 public alias org.eclipse.swt.internal.c.gtk.GtkHButtonBox GtkHButtonBox;
282 public alias org.eclipse.swt.internal.c.gtk.GtkHandleBoxClass GtkHandleBoxClass;
283 public alias org.eclipse.swt.internal.c.gtk.GtkHandleBox GtkHandleBox;
284 public alias org.eclipse.swt.internal.c.gtk.GtkGammaCurveClass GtkGammaCurveClass;
285 public alias org.eclipse.swt.internal.c.gtk.GtkGammaCurve GtkGammaCurve;
286 public alias org.eclipse.swt.internal.c.gtk.GtkFontSelectionDialogClass GtkFontSelectionDialogClass;
287 public alias org.eclipse.swt.internal.c.gtk.GtkFontSelectionDialog GtkFontSelectionDialog;
288 public alias org.eclipse.swt.internal.c.gtk.GtkFontSelectionClass GtkFontSelectionClass;
289 public alias org.eclipse.swt.internal.c.gtk.GtkFontSelection GtkFontSelection;
290 public alias org.eclipse.swt.internal.c.gtk.GtkFontButtonClass GtkFontButtonClass;
291 public alias org.eclipse.swt.internal.c.gtk.GtkFontButton GtkFontButton;
292 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserWidgetClass GtkFileChooserWidgetClass;
293 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserWidget GtkFileChooserWidget;
294 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserDialogClass GtkFileChooserDialogClass;
295 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserDialog GtkFileChooserDialog;
296 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserButtonClass GtkFileChooserButtonClass;
297 public alias org.eclipse.swt.internal.c.gtk.GtkFileChooserButton GtkFileChooserButton;
298 public alias org.eclipse.swt.internal.c.gtk.GtkFileFilterInfo GtkFileFilterInfo;
299 public alias org.eclipse.swt.internal.c.gtk.GtkFileFilter GtkFileFilter;
300 public alias org.eclipse.swt.internal.c.gtk.GtkFixedChild GtkFixedChild;
301 public alias org.eclipse.swt.internal.c.gtk.GtkFixedClass GtkFixedClass;
302 public alias org.eclipse.swt.internal.c.gtk.GtkFixed GtkFixed;
303 public alias org.eclipse.swt.internal.c.gtk.GtkFileSelectionClass GtkFileSelectionClass;
304 public alias org.eclipse.swt.internal.c.gtk.GtkFileSelection GtkFileSelection;
305 public alias org.eclipse.swt.internal.c.gtk.GtkExpanderClass GtkExpanderClass;
306 public alias org.eclipse.swt.internal.c.gtk.GtkExpander GtkExpander;
307 public alias org.eclipse.swt.internal.c.gtk.GtkEventBoxClass GtkEventBoxClass;
308 public alias org.eclipse.swt.internal.c.gtk.GtkEventBox GtkEventBox;
309 public alias org.eclipse.swt.internal.c.gtk.GtkCurveClass GtkCurveClass;
310 public alias org.eclipse.swt.internal.c.gtk.GtkCurve GtkCurve;
311 public alias org.eclipse.swt.internal.c.gtk.GtkDrawingAreaClass GtkDrawingAreaClass;
312 public alias org.eclipse.swt.internal.c.gtk.GtkDrawingArea GtkDrawingArea;
313 public alias org.eclipse.swt.internal.c.gtk.GtkCTreeNode GtkCTreeNode;
314 public alias org.eclipse.swt.internal.c.gtk.GtkCTreeRow GtkCTreeRow;
315 public alias org.eclipse.swt.internal.c.gtk.GtkCTreeClass GtkCTreeClass;
316 public alias org.eclipse.swt.internal.c.gtk.GtkCTree GtkCTree;
317 public alias org.eclipse.swt.internal.c.gtk.GtkComboBoxEntryClass GtkComboBoxEntryClass;
318 public alias org.eclipse.swt.internal.c.gtk.GtkComboBoxEntry GtkComboBoxEntry;
319 public alias org.eclipse.swt.internal.c.gtk.GtkComboBoxClass GtkComboBoxClass;
320 public alias org.eclipse.swt.internal.c.gtk.GtkComboBox GtkComboBox;
321 public alias org.eclipse.swt.internal.c.gtk.GtkTreeSelectionClass GtkTreeSelectionClass;
322 public alias org.eclipse.swt.internal.c.gtk.GtkTreeSelection GtkTreeSelection;
323 public alias org.eclipse.swt.internal.c.gtk.GtkTreeViewClass GtkTreeViewClass;
324 public alias org.eclipse.swt.internal.c.gtk.GtkTreeView GtkTreeView;
325 public alias org.eclipse.swt.internal.c.gtk.GtkEntryClass GtkEntryClass;
326 public alias org.eclipse.swt.internal.c.gtk.GtkEntry GtkEntry;
327 public alias org.eclipse.swt.internal.c.gtk.GtkEntryCompletionClass GtkEntryCompletionClass;
328 public alias org.eclipse.swt.internal.c.gtk.GtkEntryCompletion GtkEntryCompletion;
329 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModelFilterClass GtkTreeModelFilterClass;
330 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModelFilter GtkTreeModelFilter;
331 public alias org.eclipse.swt.internal.c.gtk.GtkListStoreClass GtkListStoreClass;
332 public alias org.eclipse.swt.internal.c.gtk.GtkListStore GtkListStore;
333 public alias org.eclipse.swt.internal.c.gtk.GtkIMContextClass GtkIMContextClass;
334 public alias org.eclipse.swt.internal.c.gtk.GtkIMContext GtkIMContext;
335 public alias org.eclipse.swt.internal.c.gtk.GtkEditableClass GtkEditableClass;
336 public alias org.eclipse.swt.internal.c.gtk.GtkComboClass GtkComboClass;
337 public alias org.eclipse.swt.internal.c.gtk.GtkCombo GtkCombo;
338 public alias org.eclipse.swt.internal.c.gtk.GtkHBoxClass GtkHBoxClass;
339 public alias org.eclipse.swt.internal.c.gtk.GtkHBox GtkHBox;
340 public alias org.eclipse.swt.internal.c.gtk.GtkColorSelectionDialogClass GtkColorSelectionDialogClass;
341 public alias org.eclipse.swt.internal.c.gtk.GtkColorSelectionDialog GtkColorSelectionDialog;
342 public alias org.eclipse.swt.internal.c.gtk.GtkColorSelectionClass GtkColorSelectionClass;
343 public alias org.eclipse.swt.internal.c.gtk.GtkColorSelection GtkColorSelection;
344 public alias org.eclipse.swt.internal.c.gtk.GtkVBoxClass GtkVBoxClass;
345 public alias org.eclipse.swt.internal.c.gtk.GtkVBox GtkVBox;
346 public alias org.eclipse.swt.internal.c.gtk.GtkColorButtonClass GtkColorButtonClass;
347 public alias org.eclipse.swt.internal.c.gtk.GtkColorButton GtkColorButton;
348 public alias org.eclipse.swt.internal.c.gtk.GtkCListDestInfo GtkCListDestInfo;
349 public alias org.eclipse.swt.internal.c.gtk.GtkCListCellInfo GtkCListCellInfo;
350 public alias org.eclipse.swt.internal.c.gtk.GtkCellWidget GtkCellWidget;
351 public alias org.eclipse.swt.internal.c.gtk.GtkCellPixText GtkCellPixText;
352 public alias org.eclipse.swt.internal.c.gtk.GtkCellPixmap GtkCellPixmap;
353 public alias org.eclipse.swt.internal.c.gtk.GtkCellText GtkCellText;
354 public alias org.eclipse.swt.internal.c.gtk.GtkCell GtkCell;
355 public alias org.eclipse.swt.internal.c.gtk.GtkCListRow GtkCListRow;
356 public alias org.eclipse.swt.internal.c.gtk.GtkCListColumn GtkCListColumn;
357 public alias org.eclipse.swt.internal.c.gtk.GtkCListClass GtkCListClass;
358 public alias org.eclipse.swt.internal.c.gtk.GtkCList GtkCList;
359 public alias org.eclipse.swt.internal.c.gtk.GtkVScrollbarClass GtkVScrollbarClass;
360 public alias org.eclipse.swt.internal.c.gtk.GtkVScrollbar GtkVScrollbar;
361 public alias org.eclipse.swt.internal.c.gtk.GtkHScrollbarClass GtkHScrollbarClass;
362 public alias org.eclipse.swt.internal.c.gtk.GtkHScrollbar GtkHScrollbar;
363 public alias org.eclipse.swt.internal.c.gtk.GtkScrollbarClass GtkScrollbarClass;
364 public alias org.eclipse.swt.internal.c.gtk.GtkScrollbar GtkScrollbar;
365 public alias org.eclipse.swt.internal.c.gtk.GtkRangeClass GtkRangeClass;
366 public alias org.eclipse.swt.internal.c.gtk.GtkRange GtkRange;
367 public alias org.eclipse.swt.internal.c.gtk.GtkTargetPair GtkTargetPair;
368 public alias org.eclipse.swt.internal.c.gtk.GtkTargetEntry GtkTargetEntry;
369 public alias org.eclipse.swt.internal.c.gtk.GtkTargetList GtkTargetList;
370 public alias org.eclipse.swt.internal.c.gtk.GtkTextBuffer GtkTextBuffer;
371 public alias org.eclipse.swt.internal.c.gtk.GtkTextChildAnchorClass GtkTextChildAnchorClass;
372 public alias org.eclipse.swt.internal.c.gtk.GtkTextChildAnchor GtkTextChildAnchor;
373 public alias org.eclipse.swt.internal.c.gtk.GtkTextAppearance GtkTextAppearance;
374 public alias org.eclipse.swt.internal.c.gtk.GtkTextTagClass GtkTextTagClass;
375 public alias org.eclipse.swt.internal.c.gtk.GtkTextTag GtkTextTag;
376 public alias org.eclipse.swt.internal.c.gtk.GtkTextAttributes GtkTextAttributes;
377 public alias org.eclipse.swt.internal.c.gtk.GtkTextTagTable GtkTextTagTable;
378 public alias org.eclipse.swt.internal.c.gtk.GtkTextIter GtkTextIter;
379 public alias org.eclipse.swt.internal.c.gtk.GtkCheckMenuItemClass GtkCheckMenuItemClass;
380 public alias org.eclipse.swt.internal.c.gtk.GtkCheckMenuItem GtkCheckMenuItem;
381 public alias org.eclipse.swt.internal.c.gtk.GtkMenuItemClass GtkMenuItemClass;
382 public alias org.eclipse.swt.internal.c.gtk.GtkMenuItem GtkMenuItem;
383 public alias org.eclipse.swt.internal.c.gtk.GtkItemClass GtkItemClass;
384 public alias org.eclipse.swt.internal.c.gtk.GtkItem GtkItem;
385 public alias org.eclipse.swt.internal.c.gtk.GtkCheckButtonClass GtkCheckButtonClass;
386 public alias org.eclipse.swt.internal.c.gtk.GtkCheckButton GtkCheckButton;
387 public alias org.eclipse.swt.internal.c.gtk.GtkToggleButtonClass GtkToggleButtonClass;
388 public alias org.eclipse.swt.internal.c.gtk.GtkToggleButton GtkToggleButton;
389 public alias org.eclipse.swt.internal.c.gtk.GtkCellViewClass GtkCellViewClass;
390 public alias org.eclipse.swt.internal.c.gtk.GtkCellView GtkCellView;
391 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererToggleClass GtkCellRendererToggleClass;
392 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererToggle GtkCellRendererToggle;
393 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererSpinClass GtkCellRendererSpinClass;
394 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererSpin GtkCellRendererSpin;
395 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererProgressClass GtkCellRendererProgressClass;
396 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererProgress GtkCellRendererProgress;
397 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererPixbufClass GtkCellRendererPixbufClass;
398 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererPixbuf GtkCellRendererPixbuf;
399 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererComboClass GtkCellRendererComboClass;
400 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererCombo GtkCellRendererCombo;
401 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererAccelClass GtkCellRendererAccelClass;
402 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererAccel GtkCellRendererAccel;
403 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererTextClass GtkCellRendererTextClass;
404 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererText GtkCellRendererText;
405 public alias org.eclipse.swt.internal.c.gtk.GtkCellLayoutIface GtkCellLayoutIface;
406 public alias org.eclipse.swt.internal.c.gtk.GtkTreeViewColumnClass GtkTreeViewColumnClass;
407 public alias org.eclipse.swt.internal.c.gtk.GtkTreeViewColumn GtkTreeViewColumn;
408 public alias org.eclipse.swt.internal.c.gtk.GtkTreeSortableIface GtkTreeSortableIface;
409 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModelIface GtkTreeModelIface;
410 public alias org.eclipse.swt.internal.c.gtk.GtkTreeIter GtkTreeIter;
411 public alias org.eclipse.swt.internal.c.gtk.GtkCellRendererClass GtkCellRendererClass;
412 public alias org.eclipse.swt.internal.c.gtk.GtkCellRenderer GtkCellRenderer;
413 public alias org.eclipse.swt.internal.c.gtk.GtkCellEditableIface GtkCellEditableIface;
414 public alias org.eclipse.swt.internal.c.gtk.GtkCalendarClass GtkCalendarClass;
415 public alias org.eclipse.swt.internal.c.gtk.GtkCalendar GtkCalendar;
416 public alias org.eclipse.swt.internal.c.gtk.GtkButtonClass GtkButtonClass;
417 public alias org.eclipse.swt.internal.c.gtk.GtkButton GtkButton;
418 public alias org.eclipse.swt.internal.c.gtk.GtkImageIconNameData GtkImageIconNameData;
419 public alias org.eclipse.swt.internal.c.gtk.GtkImageAnimationData GtkImageAnimationData;
420 public alias org.eclipse.swt.internal.c.gtk.GtkImageIconSetData GtkImageIconSetData;
421 public alias org.eclipse.swt.internal.c.gtk.GtkImageStockData GtkImageStockData;
422 public alias org.eclipse.swt.internal.c.gtk.GtkImagePixbufData GtkImagePixbufData;
423 public alias org.eclipse.swt.internal.c.gtk.GtkImageImageData GtkImageImageData;
424 public alias org.eclipse.swt.internal.c.gtk.GtkImagePixmapData GtkImagePixmapData;
425 public alias org.eclipse.swt.internal.c.gtk.GtkImageClass GtkImageClass;
426 public alias org.eclipse.swt.internal.c.gtk.GtkImage GtkImage;
427 public alias org.eclipse.swt.internal.c.gtk.GtkBuildableIface GtkBuildableIface;
428 public alias org.eclipse.swt.internal.c.gtk.GtkBuilderClass GtkBuilderClass;
429 public alias org.eclipse.swt.internal.c.gtk.GtkBuilder GtkBuilder;
430 public alias org.eclipse.swt.internal.c.gtk.GtkBindingArg GtkBindingArg;
431 public alias org.eclipse.swt.internal.c.gtk.GtkBindingSignal GtkBindingSignal;
432 public alias org.eclipse.swt.internal.c.gtk.GtkBindingEntry GtkBindingEntry;
433 public alias org.eclipse.swt.internal.c.gtk.GtkBindingSet GtkBindingSet;
434 public alias org.eclipse.swt.internal.c.gtk.GtkButtonBoxClass GtkButtonBoxClass;
435 public alias org.eclipse.swt.internal.c.gtk.GtkButtonBox GtkButtonBox;
436 public alias org.eclipse.swt.internal.c.gtk.GtkBoxChild GtkBoxChild;
437 public alias org.eclipse.swt.internal.c.gtk.GtkBoxClass GtkBoxClass;
438 public alias org.eclipse.swt.internal.c.gtk.GtkBox GtkBox;
439 public alias org.eclipse.swt.internal.c.gtk.GtkAssistantClass GtkAssistantClass;
440 public alias org.eclipse.swt.internal.c.gtk.GtkAssistant GtkAssistant;
441 public alias org.eclipse.swt.internal.c.gtk.GtkAspectFrameClass GtkAspectFrameClass;
442 public alias org.eclipse.swt.internal.c.gtk.GtkAspectFrame GtkAspectFrame;
443 public alias org.eclipse.swt.internal.c.gtk.GtkFrameClass GtkFrameClass;
444 public alias org.eclipse.swt.internal.c.gtk.GtkFrame GtkFrame;
445 public alias org.eclipse.swt.internal.c.gtk.GtkArrowClass GtkArrowClass;
446 public alias org.eclipse.swt.internal.c.gtk.GtkArrow GtkArrow;
447 public alias org.eclipse.swt.internal.c.gtk.GtkAlignmentClass GtkAlignmentClass;
448 public alias org.eclipse.swt.internal.c.gtk.GtkAlignment GtkAlignment;
449 public alias org.eclipse.swt.internal.c.gtk.GtkRadioActionEntry GtkRadioActionEntry;
450 public alias org.eclipse.swt.internal.c.gtk.GtkToggleActionEntry GtkToggleActionEntry;
451 public alias org.eclipse.swt.internal.c.gtk.GtkActionEntry GtkActionEntry;
452 public alias org.eclipse.swt.internal.c.gtk.GtkActionGroupClass GtkActionGroupClass;
453 public alias org.eclipse.swt.internal.c.gtk.GtkActionGroup GtkActionGroup;
454 public alias org.eclipse.swt.internal.c.gtk.GtkItemFactoryItem GtkItemFactoryItem;
455 public alias org.eclipse.swt.internal.c.gtk.GtkItemFactoryEntry GtkItemFactoryEntry;
456 public alias org.eclipse.swt.internal.c.gtk.GtkItemFactoryClass GtkItemFactoryClass;
457 public alias org.eclipse.swt.internal.c.gtk.GtkItemFactory GtkItemFactory;
458 public alias org.eclipse.swt.internal.c.gtk.GtkActionClass GtkActionClass;
459 public alias org.eclipse.swt.internal.c.gtk.GtkAction GtkAction;
460 public alias org.eclipse.swt.internal.c.gtk.GtkAccessibleClass GtkAccessibleClass;
461 public alias org.eclipse.swt.internal.c.gtk.GtkAccessible GtkAccessible;
462 public alias org.eclipse.swt.internal.c.gtk.GtkAccelLabelClass GtkAccelLabelClass;
463 public alias org.eclipse.swt.internal.c.gtk.GtkAccelLabel GtkAccelLabel;
464 public alias org.eclipse.swt.internal.c.gtk.GtkLabelClass GtkLabelClass;
465 public alias org.eclipse.swt.internal.c.gtk.GtkLabel GtkLabel;
466 public alias org.eclipse.swt.internal.c.gtk.GtkMenuClass GtkMenuClass;
467 public alias org.eclipse.swt.internal.c.gtk.GtkMenu GtkMenu;
468 public alias org.eclipse.swt.internal.c.gtk.GtkMenuShellClass GtkMenuShellClass;
469 public alias org.eclipse.swt.internal.c.gtk.GtkMenuShell GtkMenuShell;
470 public alias org.eclipse.swt.internal.c.gtk.GtkMiscClass GtkMiscClass;
471 public alias org.eclipse.swt.internal.c.gtk.GtkMisc GtkMisc;
472 public alias org.eclipse.swt.internal.c.gtk.GtkAboutDialogClass GtkAboutDialogClass;
473 public alias org.eclipse.swt.internal.c.gtk.GtkAboutDialog GtkAboutDialog;
474 public alias org.eclipse.swt.internal.c.gtk.GtkDialogClass GtkDialogClass;
475 public alias org.eclipse.swt.internal.c.gtk.GtkDialog GtkDialog;
476 public alias org.eclipse.swt.internal.c.gtk.GtkWindowGroupClass GtkWindowGroupClass;
477 public alias org.eclipse.swt.internal.c.gtk.GtkWindowGroup GtkWindowGroup;
478 public alias org.eclipse.swt.internal.c.gtk.GtkWindowClass GtkWindowClass;
479 public alias org.eclipse.swt.internal.c.gtk.GtkBinClass GtkBinClass;
480 public alias org.eclipse.swt.internal.c.gtk.GtkBin GtkBin;
481 public alias org.eclipse.swt.internal.c.gtk.GtkContainerClass GtkContainerClass;
482 public alias org.eclipse.swt.internal.c.gtk.GtkContainer GtkContainer;
483 public alias org.eclipse.swt.internal.c.gtk.GtkWindow GtkWindow;
484 public alias org.eclipse.swt.internal.c.gtk.GtkWidgetShapeInfo GtkWidgetShapeInfo;
485 public alias org.eclipse.swt.internal.c.gtk.GtkWidgetAuxInfo GtkWidgetAuxInfo;
486 public alias org.eclipse.swt.internal.c.gtk.GtkWidgetClass GtkWidgetClass;
487 public alias org.eclipse.swt.internal.c.gtk.GtkSelectionData GtkSelectionData;
488 public alias org.eclipse.swt.internal.c.gtk.GtkRequisition GtkRequisition;
489 public alias org.eclipse.swt.internal.c.gtk.GtkSettingsValue GtkSettingsValue;
490 public alias org.eclipse.swt.internal.c.gtk.GtkSettingsClass GtkSettingsClass;
491 public alias org.eclipse.swt.internal.c.gtk.GtkRcStyleClass GtkRcStyleClass;
492 public alias org.eclipse.swt.internal.c.gtk.GtkIconFactory GtkIconFactory;
493 public alias org.eclipse.swt.internal.c.gtk.GtkWidget GtkWidget;
494 public alias org.eclipse.swt.internal.c.gtk.GtkSettings GtkSettings;
495 public alias org.eclipse.swt.internal.c.gtk.GtkRcProperty GtkRcProperty;
496 public alias org.eclipse.swt.internal.c.gtk.GtkRcStyle GtkRcStyle;
497 public alias org.eclipse.swt.internal.c.gtk.GtkStyleClass GtkStyleClass;
498 public alias org.eclipse.swt.internal.c.gtk.GtkStyle GtkStyle;
499 public alias org.eclipse.swt.internal.c.gtk.GtkBorder GtkBorder;
500 public alias org.eclipse.swt.internal.c.gtk.GtkAdjustmentClass GtkAdjustmentClass;
501 public alias org.eclipse.swt.internal.c.gtk.GtkAdjustment GtkAdjustment;
502 public alias org.eclipse.swt.internal.c.gtk.GtkObjectClass GtkObjectClass;
503 public alias org.eclipse.swt.internal.c.gtk.GtkTypeInfo GtkTypeInfo;
504 public alias org.eclipse.swt.internal.c.gtk.GtkObject GtkObject;
505 public alias org.eclipse.swt.internal.c.gtk.GtkArg GtkArg;
506 public alias org.eclipse.swt.internal.c.gtk.GtkAccelGroupEntry GtkAccelGroupEntry;
507 public alias org.eclipse.swt.internal.c.gtk.GtkAccelKey GtkAccelKey;
508 public alias org.eclipse.swt.internal.c.gtk.GtkAccelGroupClass GtkAccelGroupClass;
509 public alias org.eclipse.swt.internal.c.gtk.GtkAccelGroup GtkAccelGroup;
510 public alias org.eclipse.swt.internal.c.gtk.GtkClipboard GtkClipboard;
511 
512 public alias org.eclipse.swt.internal.c.gtk.GtkTreeModel GtkTreeModel;
513 public alias org.eclipse.swt.internal.c.gtk.GtkTreePath GtkTreePath;
514 public alias org.eclipse.swt.internal.c.gtk.GtkEditable GtkEditable;
515 public alias org.eclipse.swt.internal.c.gtk.GtkCallback GtkCallback;
516 public alias org.eclipse.swt.internal.c.gtk.GtkAllocation GtkAllocation;
517 public alias org.eclipse.swt.internal.c.gtk.GtkPageSetup GtkPageSetup;
518 
519 
520 public alias org.eclipse.swt.internal.c.gtk_unix_print_2_0.GtkPrinter GtkPrinter;
521 public alias org.eclipse.swt.internal.c.gtk_unix_print_2_0.GtkPrintUnixDialog GtkPrintUnixDialog;
522 public alias org.eclipse.swt.internal.c.gtk_unix_print_2_0.GtkPrintJob GtkPrintJob;
523 public alias org.eclipse.swt.internal.c.gtk_unix_print_2_0.GtkPrintSettings GtkPrintSettings;
524 public alias org.eclipse.swt.internal.c.gtk_unix_print_2_0.GtkPaperSize GtkPaperSize;
525 
526 public alias org.eclipse.swt.internal.c.Xlib.XErrorEvent XErrorEvent;
527 public alias org.eclipse.swt.internal.c.Xlib.XExposeEvent XExposeEvent;
528 public alias org.eclipse.swt.internal.c.Xlib.XVisibilityEvent XVisibilityEvent;
529 public alias org.eclipse.swt.internal.c.Xlib.XEvent XEvent;
530 public alias org.eclipse.swt.internal.c.Xlib.XRectangle XRectangle;
531 public alias org.eclipse.swt.internal.c.Xlib.XButtonEvent XButtonEvent;
532 public alias org.eclipse.swt.internal.c.Xlib.XWindowChanges XWindowChanges;
533 public alias org.eclipse.swt.internal.c.Xlib.XFocusChangeEvent XFocusChangeEvent;
534 public alias org.eclipse.swt.internal.c.Xlib.XClientMessageEvent XClientMessageEvent;
535 
536 public alias org.eclipse.swt.internal.c.Xrender.XRenderPictureAttributes XRenderPictureAttributes;
537 public alias org.eclipse.swt.internal.c.Xrender.XTransform XTransform;
538 
539 
540 // function with variadic argument list
541 private void gtk_widget_style_get1( GtkWidget* widget, in char* firstPropertyName, gint* res ){
542     gtk_widget_style_get( widget, firstPropertyName, res, null );
543 }
544 // function with variadic argument list
545 private void g_object_get1( void* obj, in char* firstPropertyName, gint* res ){
546     g_object_get( obj, firstPropertyName, res, null );
547 }
548 
549 private void g_object_set1( void* obj, in char* firstPropertyName, ptrdiff_t value ){
550     g_object_set( obj, firstPropertyName, value, null );
551 }
552 
553 private void g_object_set1_float( void* obj, in char* firstPropertyName, float value ){
554     g_object_set( obj, firstPropertyName, value, null );
555 }
556 
557 private void g_signal_emit_by_name0( void* instance, in char* detailed_signal ){
558     g_signal_emit_by_name( instance, detailed_signal );
559 }
560 
561 private void g_signal_emit_by_name1( void* instance, in char* detailed_signal, void* value ){
562     g_signal_emit_by_name( instance, detailed_signal, value );
563 }
564 
565 private void g_signal_emit_by_name2( void* instance, in char* detailed_signal, void* value1, void* value2 ){
566     g_signal_emit_by_name( instance, detailed_signal, value1, value2 );
567 }
568 
569 private void g_signal_emit_by_name3( void* instance, in char* detailed_signal, void* value1, void* value2, void* value3 ){
570     g_signal_emit_by_name( instance, detailed_signal, value1, value2, value3 );
571 }
572 
573 private void gdk_pixbuf_save_to_buffer0(GdkPixbuf *pixbuf, char **buffer, gsize *buffer_size,
574    in char *type, GError **error ){
575     gdk_pixbuf_save_to_bufferv( pixbuf, buffer, buffer_size, type, null, null, error );
576 }
577 
578 private void gtk_list_store_set1(void* store , void* iter, gint column, void* value ){
579     gtk_list_store_set( cast(GtkListStore *)store, cast(GtkTreeIter *)iter, column, value, -1 );
580 }
581 
582 private void gtk_tree_model_get1(void* store , void* iter, gint column, void** value ){
583     gtk_tree_model_get( cast(GtkTreeModel*) store, cast(GtkTreeIter *)iter, column, value, -1 );
584 }
585 
586 private void gtk_tree_store_set1(void* tree_store, GtkTreeIter *iter, gint column, void* value ){
587     gtk_tree_store_set( tree_store, iter, column, value, -1 );
588 }
589 private void gtk_cell_layout_set_attributes1( void *cell_layout, void* cell, in void* key, void* value ){
590     gtk_cell_layout_set_attributes( cast(GtkCellLayout *)cell_layout, cast(GtkCellRenderer*)cell, key, value, null );
591 }
592 GtkWidget * gtk_file_chooser_dialog_new2(in char * title, aGtkWindow * parent, int action, in char * btn0_text, int btn0_id, in char * btn1_text, int btn1_id ){
593     return gtk_file_chooser_dialog_new( title, parent, action, btn0_text, btn0_id, btn1_text, btn1_id, null );
594 }
595 // for linux always true, the other possibility would be GDK_WINDOWING_WIN32
596 private bool GDK_WINDOWING_X11(){
597     return true;
598 }
599 
600 private guint GDK_PIXMAP_XID(GdkDrawable* win){
601     return gdk_x11_drawable_get_xid(win);
602 }
603 
604 // macro
605 glong g_signal_connect( void* instance, in char* sig, GCallback handle, void* ptr ){
606     return g_signal_connect_data( instance, sig, handle, ptr, cast(GClosureNotify) 0, cast(GConnectFlags)0 );
607 }
608 // macro
609 void gdk_cursor_destroy( GdkCursor* cursor ){
610     gdk_cursor_unref(cursor);
611 }
612 
613 gint g_thread_supported(){
614     return g_threads_got_initialized;
615 }
616 
617 private char* localeconv_decimal_point(){
618     return localeconv().decimal_point;
619 }
620 
621 // fontconfig.h
622 struct FcConfig{};
623 private extern(C) int FcConfigAppFontAddFile (FcConfig *config, in char  *file);
624 
625 
626 template NameOfFunc(alias f) {
627     // Note: highly dependent on the .stringof formatting
628     // the value begins with "& " which is why the first two chars are cut off
629 
630     // this is also used in org.eclipse.swt/internal/cairo/Cairo and org.eclipse.swt/internal/accessible/gtk/ATK
631     // stringof in DMD and LDC is "& foobar"
632     static assert( (&f).stringof[0] == '&' );
633     static assert( (&f).stringof[1] == ' ' );
634     const char[] NameOfFunc = (&f).stringof[2 .. $];
635 }
636 
637 template ForwardGtkOsCFunc( alias cFunc ) {
638     version(Tango){
639         alias ParameterTupleOf!(cFunc) P;
640         alias ReturnTypeOf!(cFunc) R;
641         mixin("public static R " ~ NameOfFunc!(cFunc) ~ "( P p ){
642                 lock.lock();
643                 scope(exit) lock.unlock();
644                 return cFunc(p);
645                 }");
646     } else { // Phobos
647         alias ParameterTypeTuple!(cFunc) P;
648         alias ReturnType!(cFunc) R;
649         mixin("public static R " ~ NameOfFunc!(cFunc) ~ "( P p ){
650                 lock.lock();
651                 scope(exit) lock.unlock();
652                 return cFunc(p);
653                 }");
654     }
655 }
656 /+
657 // alternative template implementation, might be more stable
658 template ForwardGtkOsCFunc(char[] name) {
659   alias typeof(mixin(name)) func;
660   alias ParameterTupleOf!(func) Params;
661   alias ReturnTypeOf!(func) Ret;
662   mixin("public static Ret "~name~"( Params p ) {
663     return ."~name~"(p);
664   }");
665 }
666 +/
667 //import org.eclipse.swt.internal.*;
668 
669 // for ctfe, save static ctor
670 private gint buildVERSION(gint major, gint minor, gint micro) {
671     return (major << 16) + (minor << 8) + micro;
672 }
673 private gint GTK_VERSION(){
674     version( GTK_DYN_LINK ) return buildVERSION(*gtk_major_version, *gtk_minor_version, *gtk_micro_version);
675     else                    return buildVERSION( gtk_major_version,  gtk_minor_version,  gtk_micro_version);
676 }
677 private gint GLIB_VERSION(){
678     version( DYNLINK ) return buildVERSION(*glib_major_version, *glib_minor_version, *glib_micro_version);
679     else               return buildVERSION( glib_major_version,  glib_minor_version,  glib_micro_version);
680 }
681 
682 public class OS : Platform {
683 
684     static this(){
685         org.eclipse.swt.internal.c.gtk.loadLib();
686         org.eclipse.swt.internal.c.pango.loadLib();
687         if (OS.GTK_VERSION >= OS.buildVERSION (2, 10, 0)){
688 //            org.eclipse.swt.internal.c.gtk_unix_print_2_0.loadLib();
689         }
690     }
691 
692 
693 
694     /** OS Constants */
695     public static const bool IsAIX   = false;
696     public static const bool IsSunOS = false;
697     public static const bool IsLinux = true;
698     public static const bool IsHPUX  = false;
699 
700     /** Constants */
701     public static const int ATK_RELATION_LABELLED_BY = 4;
702     public static const int G_SIGNAL_MATCH_DATA = 1 << 4;
703     public static const int G_SIGNAL_MATCH_ID = 1 << 0;
704     public static const int GDK_2BUTTON_PRESS = 0x5;
705     public static const int GDK_3BUTTON_PRESS = 0x6;
706     public static const int GDK_ACTION_COPY = 1 << 1;
707     public static const int GDK_ACTION_MOVE = 1 << 2;
708     public static const int GDK_ACTION_LINK = 1 << 3;
709     public static const int GDK_Alt_L = 0xffe9;
710     public static const int GDK_Alt_R = 0xffea;
711     public static const int GDK_AND = 4;
712     public static const int GDK_BackSpace = 0xff08;
713     public static const int GDK_BOTTOM_LEFT_CORNER = 0xc;
714     public static const int GDK_BOTTOM_RIGHT_CORNER = 0xe;
715     public static const int GDK_BOTTOM_SIDE = 0x10;
716     public static const int GDK_BUTTON1_MASK = 0x100;
717     public static const int GDK_BUTTON2_MASK = 0x200;
718     public static const int GDK_BUTTON3_MASK = 0x400;
719     public static const int GDK_BUTTON_MOTION_MASK  = 1 << 4;
720     public static const int GDK_BUTTON1_MOTION_MASK = 1 << 5;
721     public static const int GDK_BUTTON2_MOTION_MASK = 1 << 6;
722     public static const int GDK_BUTTON3_MOTION_MASK = 1 << 7;
723     public static const int GDK_BUTTON_PRESS = 0x4;
724     public static const int GDK_BUTTON_PRESS_MASK = 0x100;
725     public static const int GDK_BUTTON_RELEASE = 0x7;
726     public static const int GDK_BUTTON_RELEASE_MASK = 0x200;
727     public static const int GDK_CAP_BUTT = 0x1;
728     public static const int GDK_CAP_PROJECTING = 3;
729     public static const int GDK_CAP_ROUND = 0x2;
730     public static const int GDK_COLORSPACE_RGB = 0;
731     public static const int GDK_CONFIGURE = 13;
732     public static const int GDK_CONTROL_MASK = 0x4;
733     public static const int GDK_COPY = 0x0;
734     public static const int GDK_CROSS = 0x1e;
735     public static const int GDK_CROSSING_NORMAL = 0;
736     public static const int GDK_CROSSING_GRAB = 1;
737     public static const int GDK_CROSSING_UNGRAB = 2;
738     public static const int GDK_Break = 0xff6b;
739     public static const int GDK_Cancel = 0xff69;
740     public static const int GDK_Caps_Lock = 0xffE5;
741     public static const int GDK_Clear = 0xff0B;
742     public static const int GDK_Control_L = 0xffe3;
743     public static const int GDK_Control_R = 0xffe4;
744     public static const int GDK_CURRENT_TIME = 0x0;
745     public static const int GDK_DECOR_BORDER = 0x2;
746     public static const int GDK_DECOR_MAXIMIZE = 0x40;
747     public static const int GDK_DECOR_MENU = 0x10;
748     public static const int GDK_DECOR_MINIMIZE = 0x20;
749     public static const int GDK_DECOR_RESIZEH = 0x4;
750     public static const int GDK_DECOR_TITLE = 0x8;
751     public static const int GDK_DOUBLE_ARROW = 0x2a;
752     public static const int GDK_Delete = 0xffff;
753     public static const int GDK_Down = 0xff54;
754     public static const int GDK_ENTER_NOTIFY_MASK = 0x1000;
755     public static const int GDK_ENTER_NOTIFY = 10;
756     public static const int GDK_EVEN_ODD_RULE = 0;
757     public static const int GTK_EXPANDER_COLAPSED = 0;
758     public static const int GTK_EXPANDER_SEMI_COLLAPSED = 1;
759     public static const int GTK_EXPANDER_SEMI_EXPANDED = 2;
760     public static const int GTK_EXPANDER_EXPANDED = 3;
761     public static const int GDK_EXPOSE = 2;
762     public static const int GDK_EXPOSURE_MASK = 0x2;
763     public static const int GDK_End = 0xff57;
764     public static const int GDK_Escape = 0xff1b;
765     public static const int GDK_F1 = 0xffbe;
766     public static const int GDK_F10 = 0xffc7;
767     public static const int GDK_F11 = 0xffc8;
768     public static const int GDK_F12 = 0xffc9;
769     public static const int GDK_F13 = 0xffca;
770     public static const int GDK_F14 = 0xffcb;
771     public static const int GDK_F15 = 0xffcc;
772     public static const int GDK_F2 = 0xffbf;
773     public static const int GDK_F3 = 0xffc0;
774     public static const int GDK_F4 = 0xffc1;
775     public static const int GDK_F5 = 0xffc2;
776     public static const int GDK_F6 = 0xffc3;
777     public static const int GDK_F7 = 0xffc4;
778     public static const int GDK_F8 = 0xffc5;
779     public static const int GDK_F9 = 0xffc6;
780     public static const int GDK_FLEUR = 0x34;
781     public static const int GDK_FOCUS_CHANGE = 0xc;
782     public static const int GDK_FOCUS_CHANGE_MASK = 0x4000;
783     public static const int GDK_GC_FOREGROUND = 0x1;
784     public static const int GDK_GC_CLIP_MASK = 0x80;
785     public static const int GDK_GC_CLIP_X_ORIGIN = 0x800;
786     public static const int GDK_GC_CLIP_Y_ORIGIN = 0x1000;
787     public static const int GDK_GC_LINE_WIDTH = 0x4000;
788     public static const int GDK_GC_LINE_STYLE = 0x8000;
789     public static const int GDK_GC_CAP_STYLE = 0x10000;
790     public static const int GDK_GC_JOIN_STYLE = 0x20000;
791     public static const int GDK_GRAB_SUCCESS = 0x0;
792     public static const int GDK_HAND2 = 0x3c;
793     public static const int GDK_Help = 0xFF6A;
794     public static const int GDK_HINT_MIN_SIZE = 1 << 1;
795     public static const int GDK_Home = 0xff50;
796     public static const int GDK_INCLUDE_INFERIORS = 0x1;
797     public static const int GDK_INPUT_ONLY = 1;
798     public static const int GDK_INTERP_BILINEAR = 0x2;
799     public static const int GDK_Insert = 0xff63;
800     public static const int GDK_ISO_Left_Tab = 0xfe20;
801     public static const int GDK_JOIN_MITER = 0x0;
802     public static const int GDK_JOIN_ROUND = 0x1;
803     public static const int GDK_JOIN_BEVEL = 0x2;
804     public static const int GDK_KEY_PRESS = 0x8;
805     public static const int GDK_KEY_PRESS_MASK = 0x400;
806     public static const int GDK_KEY_RELEASE = 0x9;
807     public static const int GDK_KEY_RELEASE_MASK = 0x800;
808     public static const int GDK_KP_0 = 0xffb0;
809     public static const int GDK_KP_1 = 0xffb1;
810     public static const int GDK_KP_2 = 0xffb2;
811     public static const int GDK_KP_3 = 0xffb3;
812     public static const int GDK_KP_4 = 0xffb4;
813     public static const int GDK_KP_5 = 0xffb5;
814     public static const int GDK_KP_6 = 0xffb6;
815     public static const int GDK_KP_7 = 0xffb7;
816     public static const int GDK_KP_8 = 0xffb8;
817     public static const int GDK_KP_9 = 0xffb9;
818     public static const int GDK_KP_Add = 0xffab;
819     public static const int GDK_KP_Decimal = 0xffae;
820     public static const int GDK_KP_Delete = 0xFF9F;
821     public static const int GDK_KP_Divide = 0xffaf;
822     public static const int GDK_KP_Down = 0xFF99;
823     public static const int GDK_KP_End = 0xFF9C;
824     public static const int GDK_KP_Enter = 0xff8d;
825     public static const int GDK_KP_Equal = 0xffbd;
826     public static const int GDK_KP_Home = 0xFF95;
827     public static const int GDK_KP_Insert = 0xFF9E;
828     public static const int GDK_KP_Left = 0xFF96;
829     public static const int GDK_KP_Multiply = 0xffaa;
830     public static const int GDK_KP_Page_Down = 0xFF9B;
831     public static const int GDK_KP_Page_Up = 0xFF9A;
832     public static const int GDK_KP_Right = 0xFF98;
833     public static const int GDK_KP_Subtract = 0xffad;
834     public static const int GDK_KP_Up = 0xFF97;
835     public static const int GDK_LEAVE_NOTIFY = 11;
836     public static const int GDK_LEAVE_NOTIFY_MASK = 0x2000;
837     public static const int GDK_LEFT_PTR = 0x44;
838     public static const int GDK_LEFT_SIDE = 0x46;
839     public static const int GDK_LINE_ON_OFF_DASH = 0x1;
840     public static const int GDK_LINE_SOLID = 0x0;
841     public static const int GDK_Linefeed = 0xff0A;
842     public static const int GDK_LSB_FIRST = 0x0;
843     public static const int GDK_Left = 0xff51;
844     public static const int GDK_Meta_L = 0xFFE7;
845     public static const int GDK_Meta_R = 0xFFE8;
846     public static const int GDK_MAP = 14;
847     public static const int GDK_MOD1_MASK = 0x8;
848     public static const int GDK_MOTION_NOTIFY = 0x3;
849     public static const int GDK_NO_EXPOSE = 30;
850     public static const int GDK_NONE = 0;
851     public static const int GDK_NOTIFY_INFERIOR = 2;
852     public static const int GDK_Num_Lock = 0xFF7F;
853     public static const int GDK_OVERLAP_RECTANGLE_OUT = 0x1;
854     public static const int GDK_PIXBUF_ALPHA_BILEVEL = 0x0;
855     public static const int GDK_POINTER_MOTION_HINT_MASK = 0x8;
856     public static const int GDK_POINTER_MOTION_MASK = 0x4;
857     public static const int GDK_PROPERTY_NOTIFY = 16;
858     public static const int GDK_Page_Down = 0xff56;
859     public static const int GDK_Page_Up = 0xff55;
860     public static const int GDK_Pause = 0xff13;
861     public static const int GDK_Print = 0xff61;
862     public static const int GDK_QUESTION_ARROW = 0x5c;
863     public static const int GDK_RGB_DITHER_NORMAL = 0x1;
864     public static const int GDK_RIGHT_SIDE = 0x60;
865     public static const int GDK_Return = 0xff0d;
866     public static const int GDK_Right = 0xff53;
867     public static const int GDK_space = 0x20;
868     public static const int GDK_SB_H_DOUBLE_ARROW = 0x6c;
869     public static const int GDK_SB_UP_ARROW = 0x72;
870     public static const int GDK_SB_V_DOUBLE_ARROW = 0x74;
871     public static const int GDK_SCROLL_UP = 0;
872     public static const int GDK_SCROLL_DOWN = 1;
873     public static const int GDK_SCROLL_LEFT = 2;
874     public static const int GDK_SCROLL_RIGHT = 3;
875     public static const int GDK_SELECTION_CLEAR = 17;
876     public static const int GDK_SELECTION_NOTIFY = 19;
877     public static const int GDK_SELECTION_REQUEST = 18;
878     public static const int GDK_SHIFT_MASK = 0x1;
879     public static const int GDK_SIZING = 0x78;
880     public static const int GDK_STIPPLED = 0x2;
881     public static const int GDK_TILED = 0x1;
882     public static const int GDK_Shift_L = 0xffe1;
883     public static const int GDK_Shift_R = 0xffe2;
884     public static const int GDK_SCROLL = 31;
885     public static const int GDK_Scroll_Lock = 0xff14;
886     public static const int GDK_TOP_LEFT_CORNER = 0x86;
887     public static const int GDK_TOP_RIGHT_CORNER = 0x88;
888     public static const int GDK_TOP_SIDE = 0x8a;
889     public static const int GDK_Tab = 0xff09;
890     public static const int GDK_Up = 0xff52;
891     public static const int GDK_WATCH = 0x96;
892     public static const int GDK_XOR = 0x2;
893     public static const int GDK_XTERM = 0x98;
894     public static const int GDK_X_CURSOR = 0x0;
895     public static const int GDK_VISIBILITY_FULLY_OBSCURED = 2;
896     public static const int GDK_VISIBILITY_NOTIFY_MASK = 1 << 17;
897     public static const int GDK_WINDOW_CHILD = 2;
898     public static const int GDK_WINDOW_STATE_ICONIFIED  = 1 << 1;
899     public static const int GDK_WINDOW_STATE_MAXIMIZED  = 1 << 2;
900     public static const int GDK_WINDOW_STATE_FULLSCREEN  = 1 << 4;
901     public static const int GTK_ACCEL_VISIBLE = 0x1;
902     public static const int GTK_ARROW_DOWN = 0x1;
903     public static const int GTK_ARROW_LEFT = 0x2;
904     public static const int GTK_ARROW_RIGHT = 0x3;
905     public static const int GTK_ARROW_UP = 0x0;
906     public static const int GTK_CALENDAR_SHOW_HEADING = 1 << 0;
907     public static const int GTK_CALENDAR_SHOW_DAY_NAMES = 1 << 1;
908     public static const int GTK_CALENDAR_NO_MONTH_CHANGE = 1 << 2;
909     public static const int GTK_CALENDAR_SHOW_WEEK_NUMBERS = 1 << 3;
910     public static const int GTK_CALENDAR_WEEK_START_MONDAY = 1 << 4;
911     public static const int GTK_CAN_DEFAULT = 0x2000;
912     public static const int GTK_CAN_FOCUS = 0x800;
913     public static const int GTK_CELL_RENDERER_MODE_ACTIVATABLE = 1;
914     public static const int GTK_CELL_RENDERER_SELECTED = 1 << 0;
915     public static const int GTK_CELL_RENDERER_FOCUSED = 1 << 4;
916     public static const int GTK_CLIST_SHOW_TITLES = 0x4;
917     public static const int GTK_CORNER_TOP_LEFT = 0x0;
918     public static const int GTK_CORNER_TOP_RIGHT = 0x2;
919     public static const int GTK_DIALOG_DESTROY_WITH_PARENT = 1 << 1;
920     public static const int GTK_DIALOG_MODAL = 1 << 0;
921     public static const int GTK_DIR_TAB_FORWARD = 0;
922     public static const int GTK_DIR_TAB_BACKWARD = 1;
923     public static const int GTK_FILE_CHOOSER_ACTION_OPEN = 0;
924     public static const int GTK_FILE_CHOOSER_ACTION_SAVE = 1;
925     public static const int GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER = 2;
926     public static const int GTK_HAS_FOCUS = 1 << 12;
927     public static const int GTK_ICON_SIZE_MENU = 1;
928     public static const int GTK_ICON_SIZE_SMALL_TOOLBAR = 2;
929     public static const int GTK_ICON_SIZE_LARGE_TOOLBAR = 3;
930     public static const int GTK_ICON_SIZE_DIALOG = 6;
931     public static const int GTK_JUSTIFY_CENTER = 0x2;
932     public static const int GTK_JUSTIFY_LEFT = 0x0;
933     public static const int GTK_JUSTIFY_RIGHT = 0x1;
934     public static const int GTK_MAPPED = 1 << 7;
935     public static const int GTK_MESSAGE_INFO = 0;
936     public static const int GTK_MESSAGE_WARNING = 1;
937     public static const int GTK_MESSAGE_QUESTION = 2;
938     public static const int GTK_MESSAGE_ERROR = 3;
939     public static const int GTK_NO_WINDOW = 1 << 5;
940     public static const int GTK_ORIENTATION_HORIZONTAL = 0x0;
941     public static const int GTK_ORIENTATION_VERTICAL = 0x1;
942     public static const int GTK_PACK_END = 1;
943     public static const int GTK_PACK_START = 0;
944     public static const int GTK_POLICY_ALWAYS = 0x0;
945     public static const int GTK_POLICY_AUTOMATIC = 0x1;
946     public static const int GTK_POLICY_NEVER = 0x2;
947     public static const int GTK_POS_TOP = 0x2;
948     public static const int GTK_POS_BOTTOM = 0x3;
949     public static const int GTK_PRINT_CAPABILITY_PAGE_SET     = 1 << 0;
950     public static const int GTK_PRINT_CAPABILITY_COPIES       = 1 << 1;
951     public static const int GTK_PRINT_CAPABILITY_COLLATE      = 1 << 2;
952     public static const int GTK_PRINT_CAPABILITY_REVERSE      = 1 << 3;
953     public static const int GTK_PRINT_CAPABILITY_SCALE        = 1 << 4;
954     public static const int GTK_PRINT_CAPABILITY_GENERATE_PDF = 1 << 5;
955     public static const int GTK_PRINT_CAPABILITY_GENERATE_PS  = 1 << 6;
956     public static const int GTK_PRINT_CAPABILITY_PREVIEW      = 1 << 7;
957     public static const int GTK_PRINT_PAGES_ALL = 0;
958     public static const int GTK_PRINT_PAGES_CURRENT = 1;
959     public static const int GTK_PRINT_PAGES_RANGES = 2;
960     public static const int GTK_PROGRESS_CONTINUOUS = 0x0;
961     public static const int GTK_PROGRESS_DISCRETE = 0x1;
962     public static const int GTK_PROGRESS_LEFT_TO_RIGHT = 0x0;
963     public static const int GTK_PROGRESS_BOTTOM_TO_TOP = 0x2;
964     public static const int GTK_REALIZED  = 1 << 6;
965     public static const int GTK_RECEIVES_DEFAULT = 1 << 20;
966     public static const int GTK_RELIEF_NONE = 0x2;
967     public static const int GTK_RELIEF_NORMAL = 0;
968     public static const int GTK_RC_BG = 1 << 1;
969     public static const int GTK_RC_FG = 1 << 0;
970     public static const int GTK_RC_TEXT = 1 << 2;
971     public static const int GTK_RC_BASE = 1 << 3;
972     public static const int GTK_RESPONSE_APPLY = 0xfffffff6;
973     public static const int GTK_RESPONSE_CANCEL = 0xfffffffa;
974     public static const int GTK_RESPONSE_OK = 0xfffffffb;
975     public static const int GTK_SCROLL_NONE = 0;
976     public static const int GTK_SCROLL_JUMP = 1;
977     public static const int GTK_SCROLL_STEP_BACKWARD = 2;
978     public static const int GTK_SCROLL_STEP_FORWARD = 3;
979     public static const int GTK_SCROLL_PAGE_BACKWARD = 4;
980     public static const int GTK_SCROLL_PAGE_FORWARD = 5;
981     public static const int GTK_SCROLL_STEP_UP = 6;
982     public static const int GTK_SCROLL_STEP_DOWN = 7;
983     public static const int GTK_SCROLL_PAGE_UP = 8;
984     public static const int GTK_SCROLL_PAGE_DOWN = 9;
985     public static const int GTK_SCROLL_STEP_LEFT = 10;
986     public static const int GTK_SCROLL_STEP_RIGHT = 11;
987     public static const int GTK_SCROLL_PAGE_LEFT = 12;
988     public static const int GTK_SCROLL_PAGE_RIGHT = 13;
989     public static const int GTK_SCROLL_START = 14;
990     public static const int GTK_SCROLL_END = 15;
991     public static const int GTK_SELECTION_BROWSE = 0x2;
992     public static const int GTK_SELECTION_MULTIPLE = 0x3;
993     public static const int GTK_SENSITIVE = 0x200;
994     public static const int GTK_SHADOW_ETCHED_IN = 0x3;
995     public static const int GTK_SHADOW_ETCHED_OUT = 0x4;
996     public static const int GTK_SHADOW_IN = 0x1;
997     public static const int GTK_SHADOW_NONE = 0x0;
998     public static const int GTK_SHADOW_OUT = 0x2;
999     public static const int GTK_STATE_ACTIVE = 0x1;
1000     public static const int GTK_STATE_INSENSITIVE = 0x4;
1001     public static const int GTK_STATE_NORMAL = 0x0;
1002     public static const int GTK_STATE_PRELIGHT = 0x2;
1003     public static const int GTK_STATE_SELECTED = 0x3;
1004     public static const int GTK_TEXT_DIR_LTR = 1;
1005     public static const int GTK_TEXT_DIR_NONE = 0 ;
1006     public static const int GTK_TEXT_DIR_RTL = 2;
1007     public static const int GTK_TEXT_WINDOW_TEXT = 2;
1008     public static const int GTK_TOOLBAR_CHILD_BUTTON = 0x1;
1009     public static const int GTK_TOOLBAR_CHILD_RADIOBUTTON = 0x3;
1010     public static const int GTK_TOOLBAR_CHILD_TOGGLEBUTTON = 0x2;
1011     public static const int GTK_TREE_VIEW_COLUMN_GROW_ONLY = 0;
1012     public static const int GTK_TREE_VIEW_COLUMN_AUTOSIZE = 1;
1013     public static const int GTK_TREE_VIEW_COLUMN_FIXED = 2;
1014     public static const int GTK_TREE_VIEW_DROP_BEFORE = 0;
1015     public static const int GTK_TREE_VIEW_DROP_AFTER = 1;
1016     public static const int GTK_TREE_VIEW_DROP_INTO_OR_BEFORE = 2;
1017     public static const int GTK_TREE_VIEW_DROP_INTO_OR_AFTER = 3;
1018     public static const int GDK_UNMAP = 15;
1019     public static const int GTK_UNIT_PIXEL = 0;
1020     public static const int GTK_UNIT_POINTS = 1;
1021     public static const int GTK_UNIT_INCH = 2;
1022     public static const int GTK_UNIT_MM = 3;
1023     public static const int GTK_VISIBILITY_FULL = 0x2;
1024     public static const int GTK_VISIBILITY_NONE = 0x0;
1025     public static const int GTK_VISIBLE = 0x100;
1026     public static const int GDK_WA_X = 1 << 2;
1027     public static const int GDK_WA_Y = 1 << 3;
1028     public static const int GDK_WA_VISUAL = 1 << 6;
1029     public static const int GTK_WINDOW_POPUP = 0x1;
1030     public static const int GTK_WINDOW_TOPLEVEL = 0x0;
1031     public static const int GDK_WINDOW_TYPE_HINT_DIALOG = 1;
1032     public static const int GTK_WRAP_NONE = 0;
1033     public static const int GTK_WRAP_WORD = 2;
1034     public static const int GTK_WRAP_WORD_CHAR = 3;
1035     public static const int G_LOG_FLAG_FATAL = 0x2;
1036     public static const int G_LOG_FLAG_RECURSION = 0x1;
1037     public static const int G_LOG_LEVEL_MASK = 0xfffffffc;
1038     public static const int None = 0;
1039     public static const int PANGO_ALIGN_LEFT = 0;
1040     public static const int PANGO_ALIGN_CENTER = 1;
1041     public static const int PANGO_ALIGN_RIGHT = 2;
1042     public static const int PANGO_ATTR_FOREGROUND = 9;
1043     public static const int PANGO_ATTR_BACKGROUND = 10;
1044     public static const int PANGO_ATTR_UNDERLINE = 11;
1045     public static const int PANGO_ATTR_UNDERLINE_COLOR = 18;
1046     public static const int PANGO_DIRECTION_LTR = 0;
1047     public static const int PANGO_DIRECTION_RTL = 1;
1048     public static const int PANGO_SCALE = 1024;
1049     public static const int PANGO_STRETCH_NORMAL = 0x4;
1050     public static const int PANGO_STYLE_ITALIC = 0x2;
1051     public static const int PANGO_STYLE_NORMAL = 0x0;
1052     public static const int PANGO_STYLE_OBLIQUE = 0x1;
1053     public static const int PANGO_TAB_LEFT = 0;
1054     public static const int PANGO_UNDERLINE_NONE = 0;
1055     public static const int PANGO_UNDERLINE_SINGLE = 1;
1056     public static const int PANGO_UNDERLINE_DOUBLE = 2;
1057     public static const int PANGO_UNDERLINE_LOW = 3;
1058     public static const int PANGO_UNDERLINE_ERROR = 4;
1059     public static const int PANGO_WEIGHT_BOLD = 0x2bc;
1060     public static const int PANGO_WEIGHT_NORMAL = 0x190;
1061     public static const int PANGO_WRAP_WORD = 0;
1062     public static const int PANGO_WRAP_WORD_CHAR = 2;
1063     public static const int RTLD_LAZY = 1;
1064     public static const int XA_CARDINAL = 6;
1065     public static const int XA_WINDOW = 33;
1066 
1067     /** Signals */
1068     public static const char[] activate = "activate";
1069     public static const char[] button_press_event = "button-press-event";
1070     public static const char[] button_release_event = "button-release-event";
1071     public static const char[] changed = "changed";
1072     public static const char[] change_current_page = "change-current-page";
1073     public static const char[] change_value = "change-value";
1074     public static const char[] clicked = "clicked";
1075     public static const char[] commit = "commit";
1076     public static const char[] configure_event = "configure-event";
1077     public static const char[] delete_event = "delete-event";
1078     public static const char[] day_selected = "day-selected";
1079     public static const char[] delete_range = "delete-range";
1080     public static const char[] delete_text = "delete-text";
1081     public static const char[] drag_data_delete = "drag_data_delete";
1082     public static const char[] drag_data_get = "drag_data_get";
1083     public static const char[] drag_data_received = "drag_data_received";
1084     public static const char[] drag_drop = "drag_drop";
1085     public static const char[] drag_end = "drag_end";
1086     public static const char[] drag_leave = "drag_leave";
1087     public static const char[] drag_motion = "drag_motion";
1088     public static const char[] enter_notify_event = "enter-notify-event";
1089     public static const char[] event = "event";
1090     public static const char[] event_after = "event-after";
1091     public static const char[] expand_collapse_cursor_row = "expand-collapse-cursor-row";
1092     public static const char[] expose_event = "expose-event";
1093     public static const char[] focus = "focus";
1094     public static const char[] focus_in_event = "focus-in-event";
1095     public static const char[] focus_out_event = "focus-out-event";
1096     public static const char[] grab_focus = "grab-focus";
1097     public static const char[] hide = "hide";
1098     public static const char[] input = "input";
1099     public static const char[] insert_text = "insert-text";
1100     public static const char[] key_press_event = "key-press-event";
1101     public static const char[] key_release_event = "key-release-event";
1102     public static const char[] leave_notify_event = "leave-notify-event";
1103     public static const char[] map = "map";
1104     public static const char[] map_event = "map-event";
1105     public static const char[] mnemonic_activate = "mnemonic-activate";
1106     public static const char[] month_changed = "month-changed";
1107     public static const char[] motion_notify_event = "motion-notify-event";
1108     public static const char[] move_focus = "move-focus";
1109     public static const char[] output = "output";
1110     public static const char[] popup_menu = "popup-menu";
1111     public static const char[] populate_popup = "populate-popup";
1112     public static const char[] preedit_changed = "preedit-changed";
1113     public static const char[] realize = "realize";
1114     public static const char[] row_activated = "row-activated";
1115     public static const char[] row_changed = "row-changed";
1116     public static const char[] scroll_child = "scroll-child";
1117     public static const char[] scroll_event = "scroll-event";
1118     public static const char[] select = "select";
1119     public static const char[] show = "show";
1120     public static const char[] show_help = "show-help";
1121     public static const char[] size_allocate = "size-allocate";
1122     public static const char[] size_request = "size-request";
1123     public static const char[] style_set = "style-set";
1124     public static const char[] switch_page = "switch-page";
1125     public static const char[] test_collapse_row = "test-collapse-row";
1126     public static const char[] test_expand_row = "test-expand-row";
1127     public static const char[] toggled = "toggled";
1128     public static const char[] unmap = "unmap";
1129     public static const char[] unmap_event = "unmap-event";
1130     public static const char[] unrealize = "unrealize";
1131     public static const char[] value_changed = "value-changed";
1132     public static const char[] visibility_notify_event = "visibility-notify-event";
1133     public static const char[] window_state_event = "window-state-event";
1134 
1135     /** Properties */
1136     public static const char[] active = "active";
1137     public static const char[] background_gdk = "background-gdk";
1138     public static const char[] button_relief = "button-relief";
1139     public static const char[] cell_background_gdk = "cell-background-gdk";
1140     public static const char[] default_border = "default-border";
1141     public static const char[] expander_size = "expander-size";
1142     public static const char[] fixed_height_mode = "fixed-height-mode";
1143     public static const char[] focus_line_width = "focus-line-width";
1144     public static const char[] font_desc = "font-desc";
1145     public static const char[] foreground_gdk = "foreground-gdk";
1146     public static const char[] gtk_cursor_blink = "gtk-cursor-blink";
1147     public static const char[] gtk_cursor_blink_time = "gtk-cursor-blink-time";
1148     public static const char[] gtk_double_click_time = "gtk-double-click-time";
1149     public static const char[] gtk_entry_select_on_focus = "gtk-entry-select-on-focus";
1150     public static const char[] horizontal_separator = "horizontal-separator";
1151     public static const char[] inconsistent = "inconsistent";
1152     public static const char[] interior_focus = "interior-focus";
1153     public static const char[] mode = "mode";
1154     public static const char[] pixbuf = "pixbuf";
1155     public static const char[] text = "text";
1156     public static const char[] xalign = "xalign";
1157     public static const char[] ypad = "ypad";
1158     public static const char[] GTK_PRINT_SETTINGS_OUTPUT_URI = "output-uri";
1159 
1160     public static gint GTK_VERSION(){
1161         return .GTK_VERSION();
1162     }
1163 //     = buildVERSION(gtk_major_version(), gtk_minor_version(), gtk_micro_version());
1164 
1165     public static gint GLIB_VERSION(){
1166         return .GLIB_VERSION();
1167     }
1168 
1169 public static gint buildVERSION(gint major, gint minor, gint micro) {
1170     return .buildVERSION( major, minor, micro );
1171 }
1172 
1173 /++
1174 public static final native gint localeconv_decimal_point();
1175 public static final native gint realpath(byte[] path, byte[] realPath);
1176 ++/
1177 
1178 /** X11 Native methods and constants */
1179 public static const int Above = 0;
1180 public static const int Below = 1;
1181 public static const int ButtonRelease = 5;
1182 public static const int ClientMessage = 33;
1183 public static const int CurrentTime = 0;
1184 public static const int CWSibling = 0x20;
1185 public static const int CWStackMode = 0x40;
1186 public static const int EnterNotify = 7;
1187 public static const int Expose = 12;
1188 public static const int FocusChangeMask = 1 << 21;
1189 public static const int FocusIn = 9;
1190 public static const int FocusOut = 10;
1191 public static const int GraphicsExpose = 13;
1192 public static const int NoExpose = 14;
1193 public static const int ExposureMask = 1 << 15;
1194 public static const gint NoEventMask = 0;
1195 public static const int NotifyNormal = 0;
1196 public static const int NotifyGrab = 1;
1197 public static const int NotifyHint = 1;
1198 public static const int NotifyUngrab = 2;
1199 public static const int NotifyWhileGrabbed = 3;
1200 public static const int NotifyAncestor = 0;
1201 public static const int NotifyVirtual = 1;
1202 public static const int NotifyNonlinear = 3;
1203 public static const int NotifyNonlinearVirtual = 4;
1204 public static const int NotifyPointer = 5;
1205 public static const int RevertToParent = 2;
1206 public static const int VisibilityChangeMask = 1 << 16;
1207 public static const int VisibilityFullyObscured = 2;
1208 public static const int VisibilityNotify = 15;
1209 public static const int SYSTEM_TRAY_REQUEST_DOCK = 0;
1210 
1211 /** X render natives and constants */
1212 public static const int PictStandardARGB32 = 0;
1213 public static const int PictStandardRGB24 = 1;
1214 public static const int PictStandardA8 = 2;
1215 public static const int PictStandardA4 = 3;
1216 public static const int PictStandardA1 = 4;
1217 public static const int PictOpSrc = 1;
1218 public static const int PictOpOver = 3;
1219 
1220     public static gint gtk_major_version(){
1221         version(GTK_DYN_LINK) return *.gtk_minor_version;
1222         else                  return .gtk_minor_version;
1223     }
1224     public static gint gtk_minor_version(){
1225         version(GTK_DYN_LINK) return *.gtk_minor_version;
1226         else                  return .gtk_minor_version;
1227     }
1228     public static gint gtk_micro_version(){
1229         version(GTK_DYN_LINK) return *.gtk_micro_version;
1230         else                  return .gtk_micro_version;
1231     }
1232 
1233     public static gint glib_major_version(){
1234         version(DYNLINK) return *.glib_minor_version;
1235         else             return .glib_minor_version;
1236     }
1237     public static gint glib_minor_version(){
1238         version(DYNLINK) return *.glib_minor_version;
1239         else             return .glib_minor_version;
1240     }
1241     public static gint glib_micro_version(){
1242         version(DYNLINK) return *.glib_micro_version;
1243         else             return .glib_micro_version;
1244     }
1245 
1246     mixin ForwardGtkOsCFunc!(localeconv_decimal_point);
1247     mixin ForwardGtkOsCFunc!(realpath);
1248 
1249 //    mixin ForwardGtkOsCFunc!(X_EVENT_TYPE);
1250 //    mixin ForwardGtkOsCFunc!(X_EVENT_WINDOW);
1251 //    mixin ForwardGtkOsCFunc!(.Call);
1252 //    mixin ForwardGtkOsCFunc!(.call );
1253     mixin ForwardGtkOsCFunc!(.GDK_WINDOWING_X11);
1254     mixin ForwardGtkOsCFunc!(.GDK_PIXMAP_XID);
1255 
1256 //     mixin ForwardGtkOsCFunc!(.XCheckMaskEvent);
1257 //     mixin ForwardGtkOsCFunc!(.XCheckWindowEvent);
1258     mixin ForwardGtkOsCFunc!(.XCheckIfEvent);
1259     mixin ForwardGtkOsCFunc!(.XDefaultScreen);
1260     mixin ForwardGtkOsCFunc!(.XDefaultRootWindow);
1261     mixin ForwardGtkOsCFunc!(.XFlush);
1262     mixin ForwardGtkOsCFunc!(.XFree);
1263     mixin ForwardGtkOsCFunc!(.XGetSelectionOwner);
1264     mixin ForwardGtkOsCFunc!(.XInternAtom);
1265     mixin ForwardGtkOsCFunc!(.XQueryPointer);
1266     mixin ForwardGtkOsCFunc!(.XQueryTree);
1267     mixin ForwardGtkOsCFunc!(.XKeysymToKeycode);
1268     mixin ForwardGtkOsCFunc!(.XListProperties);
1269     mixin ForwardGtkOsCFunc!(.XReconfigureWMWindow);
1270     mixin ForwardGtkOsCFunc!(.XSendEvent);
1271 
1272     mixin ForwardGtkOsCFunc!(.XSetIOErrorHandler);
1273     mixin ForwardGtkOsCFunc!(.XSetErrorHandler);
1274     mixin ForwardGtkOsCFunc!(.XSetInputFocus);
1275     mixin ForwardGtkOsCFunc!(.XSetTransientForHint);
1276     mixin ForwardGtkOsCFunc!(.XSynchronize);
1277     mixin ForwardGtkOsCFunc!(.XTestFakeButtonEvent);
1278     mixin ForwardGtkOsCFunc!(.XTestFakeKeyEvent);
1279     mixin ForwardGtkOsCFunc!(.XTestFakeMotionEvent);
1280     mixin ForwardGtkOsCFunc!(.XWarpPointer);
1281 
1282     mixin ForwardGtkOsCFunc!(.gdk_x11_atom_to_xatom);
1283     mixin ForwardGtkOsCFunc!(.gdk_x11_colormap_get_xcolormap);
1284     mixin ForwardGtkOsCFunc!(.gdk_x11_drawable_get_xdisplay);
1285     mixin ForwardGtkOsCFunc!(.gdk_x11_drawable_get_xid);
1286     mixin ForwardGtkOsCFunc!(.gdk_x11_screen_lookup_visual);
1287     mixin ForwardGtkOsCFunc!(.gdk_x11_screen_get_window_manager_name);
1288     mixin ForwardGtkOsCFunc!(.gdk_x11_visual_get_xvisual);
1289     mixin ForwardGtkOsCFunc!(.gdk_pixmap_foreign_new);
1290     mixin ForwardGtkOsCFunc!(.gdk_window_lookup);
1291     mixin ForwardGtkOsCFunc!(.gdk_window_add_filter);
1292     mixin ForwardGtkOsCFunc!(.gdk_window_remove_filter);
1293 
1294 /** X render natives and constants */
1295 
1296     mixin ForwardGtkOsCFunc!(.XRenderQueryExtension);
1297     mixin ForwardGtkOsCFunc!(.XRenderQueryVersion);
1298     mixin ForwardGtkOsCFunc!(.XRenderCreatePicture);
1299     mixin ForwardGtkOsCFunc!(.XRenderSetPictureClipRectangles);
1300     mixin ForwardGtkOsCFunc!(.XRenderSetPictureTransform);
1301     mixin ForwardGtkOsCFunc!(.XRenderFreePicture);
1302     mixin ForwardGtkOsCFunc!(.XRenderComposite);
1303     mixin ForwardGtkOsCFunc!(.XRenderFindStandardFormat);
1304     mixin ForwardGtkOsCFunc!(.XRenderFindVisualFormat);
1305 
1306     mixin ForwardGtkOsCFunc!(.g_signal_add_emission_hook);
1307     mixin ForwardGtkOsCFunc!(.g_signal_remove_emission_hook);
1308     mixin ForwardGtkOsCFunc!(.g_cclosure_new);
1309     mixin ForwardGtkOsCFunc!(.g_closure_ref);
1310     mixin ForwardGtkOsCFunc!(.g_closure_unref);
1311     mixin ForwardGtkOsCFunc!(.g_main_context_acquire);
1312     mixin ForwardGtkOsCFunc!(.g_main_context_check);
1313     mixin ForwardGtkOsCFunc!(.g_main_context_default);
1314     mixin ForwardGtkOsCFunc!(.g_main_context_iteration);
1315     mixin ForwardGtkOsCFunc!(.g_main_context_pending);
1316     mixin ForwardGtkOsCFunc!(.g_main_context_get_poll_func);
1317     mixin ForwardGtkOsCFunc!(.g_main_context_prepare);
1318     mixin ForwardGtkOsCFunc!(.g_main_context_query);
1319     mixin ForwardGtkOsCFunc!(.g_main_context_release);
1320 
1321     // no lock for g_main_context_wakeup
1322     alias .g_main_context_wakeup g_main_context_wakeup;
1323 
1324     mixin ForwardGtkOsCFunc!(.g_filename_to_utf8);
1325     mixin ForwardGtkOsCFunc!(.g_filename_to_uri);
1326     mixin ForwardGtkOsCFunc!(.g_filename_from_utf8);
1327     mixin ForwardGtkOsCFunc!(.g_filename_from_uri);
1328     mixin ForwardGtkOsCFunc!(.g_free);
1329     mixin ForwardGtkOsCFunc!(.g_idle_add);
1330     mixin ForwardGtkOsCFunc!(.g_list_append);
1331     mixin ForwardGtkOsCFunc!(.g_list_free);
1332     mixin ForwardGtkOsCFunc!(.g_list_free_1);
1333     mixin ForwardGtkOsCFunc!(.g_list_length);
1334     mixin ForwardGtkOsCFunc!(.g_list_nth);
1335     mixin ForwardGtkOsCFunc!(.g_list_nth_data);
1336     mixin ForwardGtkOsCFunc!(.g_list_prepend);
1337     mixin ForwardGtkOsCFunc!(.g_list_remove_link);
1338     mixin ForwardGtkOsCFunc!(.g_list_reverse);
1339     mixin ForwardGtkOsCFunc!(.g_locale_from_utf8);
1340     mixin ForwardGtkOsCFunc!(.g_locale_to_utf8);
1341     mixin ForwardGtkOsCFunc!(.g_log_default_handler);
1342     mixin ForwardGtkOsCFunc!(.g_log_remove_handler);
1343     mixin ForwardGtkOsCFunc!(.g_log_set_handler);
1344     mixin ForwardGtkOsCFunc!(.g_malloc);
1345     mixin ForwardGtkOsCFunc!(.g_object_get1);
1346     mixin ForwardGtkOsCFunc!(.g_object_get_qdata);
1347     mixin ForwardGtkOsCFunc!(.g_object_new);
1348     mixin ForwardGtkOsCFunc!(.g_object_ref);
1349     mixin ForwardGtkOsCFunc!(.g_object_set1);
1350     mixin ForwardGtkOsCFunc!(.g_object_set1_float);
1351     mixin ForwardGtkOsCFunc!(.g_object_set_qdata);
1352     mixin ForwardGtkOsCFunc!(.g_object_unref);
1353     mixin ForwardGtkOsCFunc!(.g_object_get_data);
1354     mixin ForwardGtkOsCFunc!(.g_object_set_data);
1355     mixin ForwardGtkOsCFunc!(.g_quark_from_string);
1356     mixin ForwardGtkOsCFunc!(.g_set_prgname);
1357     mixin ForwardGtkOsCFunc!(.g_signal_connect_closure);
1358     mixin ForwardGtkOsCFunc!(.g_signal_connect_closure_by_id);
1359     mixin ForwardGtkOsCFunc!(.g_signal_emit_by_name0);
1360     mixin ForwardGtkOsCFunc!(.g_signal_emit_by_name1);
1361     mixin ForwardGtkOsCFunc!(.g_signal_emit_by_name2);
1362     mixin ForwardGtkOsCFunc!(.g_signal_emit_by_name3);
1363     mixin ForwardGtkOsCFunc!(.g_signal_handler_disconnect);
1364     mixin ForwardGtkOsCFunc!(.g_signal_handlers_block_matched);
1365     mixin ForwardGtkOsCFunc!(.g_signal_handlers_disconnect_matched);
1366     mixin ForwardGtkOsCFunc!(.g_signal_handlers_unblock_matched);
1367     mixin ForwardGtkOsCFunc!(.g_signal_lookup );
1368     mixin ForwardGtkOsCFunc!(.g_signal_stop_emission_by_name);
1369     mixin ForwardGtkOsCFunc!(.g_source_remove );
1370     mixin ForwardGtkOsCFunc!(.g_slist_free );
1371     mixin ForwardGtkOsCFunc!(.g_slist_length );
1372     mixin ForwardGtkOsCFunc!(.g_strfreev);
1373     mixin ForwardGtkOsCFunc!(.g_strtod);
1374     mixin ForwardGtkOsCFunc!(.g_type_add_interface_static );
1375     mixin ForwardGtkOsCFunc!(.g_type_class_peek );
1376     mixin ForwardGtkOsCFunc!(.g_type_class_peek_parent );
1377     mixin ForwardGtkOsCFunc!(.g_type_from_name );
1378     mixin ForwardGtkOsCFunc!(.g_type_interface_peek_parent );
1379     mixin ForwardGtkOsCFunc!(.g_type_is_a );
1380     mixin ForwardGtkOsCFunc!(.g_type_name );
1381     mixin ForwardGtkOsCFunc!(.g_type_parent );
1382     mixin ForwardGtkOsCFunc!(.g_type_query );
1383     mixin ForwardGtkOsCFunc!(.g_type_register_static );
1384     mixin ForwardGtkOsCFunc!(.g_thread_init);
1385     mixin ForwardGtkOsCFunc!(.g_thread_supported);
1386     mixin ForwardGtkOsCFunc!(.g_utf16_to_utf8);
1387     mixin ForwardGtkOsCFunc!(.g_utf8_offset_to_pointer);
1388     mixin ForwardGtkOsCFunc!(.g_utf8_pointer_to_offset);
1389     mixin ForwardGtkOsCFunc!(.g_utf8_strlen);
1390     mixin ForwardGtkOsCFunc!(.g_utf8_to_utf16);
1391     mixin ForwardGtkOsCFunc!(.g_value_peek_pointer);
1392     mixin ForwardGtkOsCFunc!(.g_closure_sink);
1393     mixin ForwardGtkOsCFunc!(.gdk_atom_intern);
1394     mixin ForwardGtkOsCFunc!(.gdk_atom_name);
1395     mixin ForwardGtkOsCFunc!(.gdk_beep);
1396     mixin ForwardGtkOsCFunc!(.gdk_bitmap_create_from_data);
1397     mixin ForwardGtkOsCFunc!(.gdk_cairo_region);
1398     mixin ForwardGtkOsCFunc!(.gdk_cairo_set_source_color);
1399     mixin ForwardGtkOsCFunc!(.gdk_color_white);
1400     mixin ForwardGtkOsCFunc!(.gdk_colormap_alloc_color);
1401     mixin ForwardGtkOsCFunc!(.gdk_colormap_free_colors);
1402     mixin ForwardGtkOsCFunc!(.gdk_colormap_get_system);
1403     mixin ForwardGtkOsCFunc!(.gdk_colormap_query_color);
1404     mixin ForwardGtkOsCFunc!(.gdk_cursor_destroy); // is alias for gdk_cursor_unref
1405     mixin ForwardGtkOsCFunc!(.gdk_cursor_new);
1406     mixin ForwardGtkOsCFunc!(.gdk_cursor_new_from_pixmap);
1407     mixin ForwardGtkOsCFunc!(.gdk_cursor_new_from_pixbuf);
1408     mixin ForwardGtkOsCFunc!(.gdk_display_get_default);
1409     mixin ForwardGtkOsCFunc!(.gdk_display_supports_cursor_color);
1410     mixin ForwardGtkOsCFunc!(.gdk_drag_status);
1411     mixin ForwardGtkOsCFunc!(.gdk_draw_arc);
1412     mixin ForwardGtkOsCFunc!(.gdk_draw_drawable);
1413     mixin ForwardGtkOsCFunc!(.gdk_draw_image);
1414     mixin ForwardGtkOsCFunc!(.gdk_draw_layout);
1415     mixin ForwardGtkOsCFunc!(.gdk_draw_layout_with_colors);
1416     mixin ForwardGtkOsCFunc!(.gdk_draw_line);
1417     mixin ForwardGtkOsCFunc!(.gdk_draw_lines);
1418     mixin ForwardGtkOsCFunc!(.gdk_draw_pixbuf);
1419     mixin ForwardGtkOsCFunc!(.gdk_draw_point);
1420     mixin ForwardGtkOsCFunc!(.gdk_draw_polygon);
1421     mixin ForwardGtkOsCFunc!(.gdk_draw_rectangle);
1422     mixin ForwardGtkOsCFunc!(.gdk_drawable_get_depth);
1423     mixin ForwardGtkOsCFunc!(.gdk_drawable_get_image);
1424     mixin ForwardGtkOsCFunc!(.gdk_drawable_get_size);
1425     mixin ForwardGtkOsCFunc!(.gdk_drawable_get_visible_region);
1426     mixin ForwardGtkOsCFunc!(.gdk_event_copy);
1427     mixin ForwardGtkOsCFunc!(.gdk_event_free);
1428     mixin ForwardGtkOsCFunc!(.gdk_event_get);
1429     mixin ForwardGtkOsCFunc!(.gdk_event_get_root_coords);
1430     mixin ForwardGtkOsCFunc!(.gdk_event_get_coords);
1431     mixin ForwardGtkOsCFunc!(.gdk_event_get_graphics_expose);
1432     mixin ForwardGtkOsCFunc!(.gdk_event_get_state);
1433     mixin ForwardGtkOsCFunc!(.gdk_event_get_time);
1434     mixin ForwardGtkOsCFunc!(.gdk_event_handler_set);
1435     mixin ForwardGtkOsCFunc!(.gdk_event_new);
1436     mixin ForwardGtkOsCFunc!(.gdk_event_peek);
1437     mixin ForwardGtkOsCFunc!(.gdk_event_put);
1438     mixin ForwardGtkOsCFunc!(.gdk_error_trap_push);
1439     mixin ForwardGtkOsCFunc!(.gdk_error_trap_pop);
1440     mixin ForwardGtkOsCFunc!(.gdk_flush);
1441 //    mixin ForwardGtkOsCFunc!(.gdk_free_text_list);
1442     mixin ForwardGtkOsCFunc!(.gdk_gc_get_values);
1443     mixin ForwardGtkOsCFunc!(.gdk_gc_new);
1444     mixin ForwardGtkOsCFunc!(.gdk_gc_set_background);
1445     mixin ForwardGtkOsCFunc!(.gdk_gc_set_clip_mask);
1446     mixin ForwardGtkOsCFunc!(.gdk_gc_set_clip_origin);
1447     mixin ForwardGtkOsCFunc!(.gdk_gc_set_clip_rectangle);
1448     mixin ForwardGtkOsCFunc!(.gdk_gc_set_clip_region);
1449     mixin ForwardGtkOsCFunc!(.gdk_gc_set_dashes);
1450     mixin ForwardGtkOsCFunc!(.gdk_gc_set_exposures);
1451     mixin ForwardGtkOsCFunc!(.gdk_gc_set_fill);
1452     mixin ForwardGtkOsCFunc!(.gdk_gc_set_foreground);
1453     mixin ForwardGtkOsCFunc!(.gdk_gc_set_function);
1454     mixin ForwardGtkOsCFunc!(.gdk_gc_set_line_attributes);
1455     mixin ForwardGtkOsCFunc!(.gdk_gc_set_stipple);
1456     mixin ForwardGtkOsCFunc!(.gdk_gc_set_subwindow);
1457     mixin ForwardGtkOsCFunc!(.gdk_gc_set_tile);
1458     mixin ForwardGtkOsCFunc!(.gdk_gc_set_ts_origin);
1459     mixin ForwardGtkOsCFunc!(.gdk_gc_set_values);
1460     mixin ForwardGtkOsCFunc!(.gdk_keyboard_ungrab);
1461     mixin ForwardGtkOsCFunc!(.gdk_keymap_get_default);
1462     mixin ForwardGtkOsCFunc!(.gdk_keymap_translate_keyboard_state );
1463     mixin ForwardGtkOsCFunc!(.gdk_keyval_to_lower);
1464     mixin ForwardGtkOsCFunc!(.gdk_keyval_to_unicode);
1465     mixin ForwardGtkOsCFunc!(.gdk_pango_context_get);
1466     mixin ForwardGtkOsCFunc!(.gdk_pango_context_set_colormap);
1467     mixin ForwardGtkOsCFunc!(.gdk_pango_layout_get_clip_region);
1468     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_copy_area);
1469     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_from_drawable);
1470     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_has_alpha);
1471     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_height);
1472     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_pixels);
1473     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_rowstride);
1474     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_get_width);
1475     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_loader_new);
1476     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_loader_close);
1477     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_loader_get_pixbuf);
1478     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_loader_write);
1479     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_new);
1480     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_new_from_file);
1481     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_render_to_drawable);
1482     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_render_to_drawable_alpha);
1483     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_render_pixmap_and_mask);
1484     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_save_to_buffer0);
1485     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_scale);
1486     mixin ForwardGtkOsCFunc!(.gdk_pixbuf_scale_simple);
1487     mixin ForwardGtkOsCFunc!(.gdk_pixmap_new);
1488     mixin ForwardGtkOsCFunc!(.gdk_pointer_grab);
1489     mixin ForwardGtkOsCFunc!(.gdk_pointer_is_grabbed);
1490     mixin ForwardGtkOsCFunc!(.gdk_pointer_ungrab);
1491     mixin ForwardGtkOsCFunc!(.gdk_property_get);
1492     mixin ForwardGtkOsCFunc!(.gdk_region_destroy);
1493     mixin ForwardGtkOsCFunc!(.gdk_region_empty);
1494     mixin ForwardGtkOsCFunc!(.gdk_region_get_clipbox);
1495     mixin ForwardGtkOsCFunc!(.gdk_region_get_rectangles);
1496     mixin ForwardGtkOsCFunc!(.gdk_region_intersect);
1497     mixin ForwardGtkOsCFunc!(.gdk_region_new);
1498     mixin ForwardGtkOsCFunc!(.gdk_region_offset);
1499     mixin ForwardGtkOsCFunc!(.gdk_region_point_in);
1500     mixin ForwardGtkOsCFunc!(.gdk_region_polygon);
1501     mixin ForwardGtkOsCFunc!(.gdk_region_rectangle);
1502     mixin ForwardGtkOsCFunc!(.gdk_region_rect_in);
1503     mixin ForwardGtkOsCFunc!(.gdk_region_subtract);
1504     mixin ForwardGtkOsCFunc!(.gdk_region_union);
1505     mixin ForwardGtkOsCFunc!(.gdk_region_union_with_rect);
1506     mixin ForwardGtkOsCFunc!(.gdk_rgb_init);
1507     mixin ForwardGtkOsCFunc!(.gdk_screen_get_default);
1508     mixin ForwardGtkOsCFunc!(.gdk_screen_get_monitor_at_point );
1509     mixin ForwardGtkOsCFunc!(.gdk_screen_get_monitor_at_window);
1510     mixin ForwardGtkOsCFunc!(.gdk_screen_get_monitor_geometry );
1511     mixin ForwardGtkOsCFunc!(.gdk_screen_get_n_monitors);
1512     mixin ForwardGtkOsCFunc!(.gdk_screen_get_number);
1513     mixin ForwardGtkOsCFunc!(.gdk_screen_height);
1514     mixin ForwardGtkOsCFunc!(.gdk_screen_width);
1515     mixin ForwardGtkOsCFunc!(.gdk_screen_width_mm);
1516     mixin ForwardGtkOsCFunc!(.gdk_set_program_class);
1517     mixin ForwardGtkOsCFunc!(.gdk_utf8_to_compound_text);
1518     mixin ForwardGtkOsCFunc!(.gdk_utf8_to_string_target);
1519     mixin ForwardGtkOsCFunc!(.gdk_text_property_to_utf8_list);
1520     mixin ForwardGtkOsCFunc!(.gtk_tooltip_trigger_tooltip_query);
1521     mixin ForwardGtkOsCFunc!(.gdk_unicode_to_keyval);
1522     mixin ForwardGtkOsCFunc!(.gdk_visual_get_system);
1523     mixin ForwardGtkOsCFunc!(.gdk_window_at_pointer);
1524     mixin ForwardGtkOsCFunc!(.gdk_window_begin_paint_rect);
1525     mixin ForwardGtkOsCFunc!(.gdk_window_clear_area);
1526     mixin ForwardGtkOsCFunc!(.gdk_window_destroy);
1527     mixin ForwardGtkOsCFunc!(.gdk_window_end_paint);
1528     mixin ForwardGtkOsCFunc!(.gdk_window_get_children);
1529     mixin ForwardGtkOsCFunc!(.gdk_window_get_events);
1530     mixin ForwardGtkOsCFunc!(.gdk_window_focus);
1531     mixin ForwardGtkOsCFunc!(.gdk_window_freeze_updates);
1532     mixin ForwardGtkOsCFunc!(.gdk_window_get_frame_extents);
1533     mixin ForwardGtkOsCFunc!(.gdk_window_get_internal_paint_info);
1534     mixin ForwardGtkOsCFunc!(.gdk_window_get_origin);
1535     mixin ForwardGtkOsCFunc!(.gdk_window_get_parent);
1536     mixin ForwardGtkOsCFunc!(.gdk_window_get_pointer);
1537     mixin ForwardGtkOsCFunc!(.gdk_window_get_position);
1538     mixin ForwardGtkOsCFunc!(.gdk_window_get_user_data);
1539     mixin ForwardGtkOsCFunc!(.gdk_window_hide);
1540     mixin ForwardGtkOsCFunc!(.gdk_window_invalidate_rect);
1541     mixin ForwardGtkOsCFunc!(.gdk_window_invalidate_region);
1542     mixin ForwardGtkOsCFunc!(.gdk_window_is_visible);
1543     mixin ForwardGtkOsCFunc!(.gdk_window_move);
1544     mixin ForwardGtkOsCFunc!(.gdk_window_new);
1545     mixin ForwardGtkOsCFunc!(.gdk_window_lower);
1546     mixin ForwardGtkOsCFunc!(.gdk_window_process_all_updates);
1547     mixin ForwardGtkOsCFunc!(.gdk_window_process_updates);
1548     mixin ForwardGtkOsCFunc!(.gdk_window_raise);
1549     mixin ForwardGtkOsCFunc!(.gdk_window_resize);
1550     mixin ForwardGtkOsCFunc!(.gdk_window_scroll);
1551     mixin ForwardGtkOsCFunc!(.gdk_window_set_accept_focus);
1552     mixin ForwardGtkOsCFunc!(.gdk_window_set_back_pixmap);
1553     mixin ForwardGtkOsCFunc!(.gdk_window_set_cursor);
1554     mixin ForwardGtkOsCFunc!(.gdk_window_set_debug_updates);
1555     mixin ForwardGtkOsCFunc!(.gdk_window_set_decorations);
1556     mixin ForwardGtkOsCFunc!(.gdk_window_set_events);
1557     mixin ForwardGtkOsCFunc!(.gdk_window_set_icon);
1558     mixin ForwardGtkOsCFunc!(.gdk_window_set_icon_list);
1559     mixin ForwardGtkOsCFunc!(.gdk_window_set_keep_above);
1560     mixin ForwardGtkOsCFunc!(.gdk_window_set_override_redirect);
1561     mixin ForwardGtkOsCFunc!(.gdk_window_set_user_data);
1562     mixin ForwardGtkOsCFunc!(.gdk_window_shape_combine_region );
1563     mixin ForwardGtkOsCFunc!(.gdk_window_show);
1564     mixin ForwardGtkOsCFunc!(.gdk_window_show_unraised);
1565     mixin ForwardGtkOsCFunc!(.gdk_window_thaw_updates);
1566     mixin ForwardGtkOsCFunc!(.gtk_accel_group_new);
1567     mixin ForwardGtkOsCFunc!(.gtk_accel_groups_activate);
1568     mixin ForwardGtkOsCFunc!(.gtk_accel_label_set_accel_widget);
1569     mixin ForwardGtkOsCFunc!(.gtk_accel_label_get_accel_widget);
1570     mixin ForwardGtkOsCFunc!(.gtk_adjustment_changed);
1571     mixin ForwardGtkOsCFunc!(.gtk_adjustment_new);
1572     mixin ForwardGtkOsCFunc!(.gtk_adjustment_set_value);
1573     mixin ForwardGtkOsCFunc!(.gtk_adjustment_value_changed);
1574     mixin ForwardGtkOsCFunc!(.gtk_arrow_new);
1575     mixin ForwardGtkOsCFunc!(.gtk_arrow_set);
1576     mixin ForwardGtkOsCFunc!(.gtk_bin_get_child);
1577     mixin ForwardGtkOsCFunc!(.gtk_box_set_spacing);
1578     mixin ForwardGtkOsCFunc!(.gtk_box_set_child_packing);
1579     mixin ForwardGtkOsCFunc!(.gtk_button_clicked);
1580     mixin ForwardGtkOsCFunc!(.gtk_button_get_relief);
1581     mixin ForwardGtkOsCFunc!(.gtk_button_new);
1582     mixin ForwardGtkOsCFunc!(.gtk_button_set_relief);
1583     mixin ForwardGtkOsCFunc!(.gtk_calendar_new);
1584     mixin ForwardGtkOsCFunc!(.gtk_calendar_select_month);
1585     mixin ForwardGtkOsCFunc!(.gtk_calendar_select_day);
1586     mixin ForwardGtkOsCFunc!(.gtk_calendar_set_display_options);
1587     mixin ForwardGtkOsCFunc!(.gtk_calendar_display_options);
1588     mixin ForwardGtkOsCFunc!(.gtk_calendar_get_date);
1589     mixin ForwardGtkOsCFunc!(.gtk_cell_layout_clear);
1590     mixin ForwardGtkOsCFunc!(.gtk_cell_layout_set_attributes1);
1591     mixin ForwardGtkOsCFunc!(.gtk_cell_layout_pack_start);
1592     mixin ForwardGtkOsCFunc!(.gtk_cell_renderer_get_size);
1593     mixin ForwardGtkOsCFunc!(.gtk_cell_renderer_pixbuf_new);
1594     mixin ForwardGtkOsCFunc!(.gtk_cell_renderer_text_new);
1595     mixin ForwardGtkOsCFunc!(.gtk_cell_renderer_toggle_new);
1596     mixin ForwardGtkOsCFunc!(.gtk_check_button_new);
1597     mixin ForwardGtkOsCFunc!(.gtk_check_menu_item_get_active);
1598     mixin ForwardGtkOsCFunc!(.gtk_check_menu_item_new_with_label);
1599     mixin ForwardGtkOsCFunc!(.gtk_check_menu_item_set_active);
1600     mixin ForwardGtkOsCFunc!(.gtk_check_version);
1601     mixin ForwardGtkOsCFunc!(.gtk_clipboard_clear);
1602     mixin ForwardGtkOsCFunc!(.gtk_clipboard_get);
1603     mixin ForwardGtkOsCFunc!(.gtk_clipboard_set_with_data);
1604     mixin ForwardGtkOsCFunc!(.gtk_clipboard_wait_for_contents);
1605     mixin ForwardGtkOsCFunc!(.gtk_color_selection_dialog_new);
1606     mixin ForwardGtkOsCFunc!(.gtk_color_selection_get_current_color);
1607     mixin ForwardGtkOsCFunc!(.gtk_color_selection_set_current_color);
1608     mixin ForwardGtkOsCFunc!(.gtk_color_selection_set_has_palette);
1609     mixin ForwardGtkOsCFunc!(.gtk_combo_disable_activate);
1610     mixin ForwardGtkOsCFunc!(.gtk_combo_new);
1611     mixin ForwardGtkOsCFunc!(.gtk_combo_set_case_sensitive);
1612     mixin ForwardGtkOsCFunc!(.gtk_combo_box_set_focus_on_click);
1613     mixin ForwardGtkOsCFunc!(.gtk_combo_set_popdown_strings);
1614     mixin ForwardGtkOsCFunc!(.gtk_combo_box_entry_new_text);
1615     mixin ForwardGtkOsCFunc!(.gtk_combo_box_new_text);
1616     mixin ForwardGtkOsCFunc!(.gtk_combo_box_insert_text);
1617     mixin ForwardGtkOsCFunc!(.gtk_combo_box_remove_text);
1618     mixin ForwardGtkOsCFunc!(.gtk_combo_box_get_active);
1619     mixin ForwardGtkOsCFunc!(.gtk_combo_box_get_model);
1620     mixin ForwardGtkOsCFunc!(.gtk_combo_box_set_active);
1621     mixin ForwardGtkOsCFunc!(.gtk_combo_box_popup);
1622     mixin ForwardGtkOsCFunc!(.gtk_combo_box_popdown);
1623     mixin ForwardGtkOsCFunc!(.gtk_container_add);
1624     mixin ForwardGtkOsCFunc!(.gtk_container_forall);
1625     mixin ForwardGtkOsCFunc!(.gtk_container_get_border_width);
1626     mixin ForwardGtkOsCFunc!(.gtk_container_get_children);
1627     mixin ForwardGtkOsCFunc!(.gtk_container_remove);
1628     mixin ForwardGtkOsCFunc!(.gtk_container_resize_children);
1629     mixin ForwardGtkOsCFunc!(.gtk_container_set_border_width);
1630     mixin ForwardGtkOsCFunc!(.gtk_dialog_add_button);
1631     mixin ForwardGtkOsCFunc!(.gtk_dialog_run);
1632     mixin ForwardGtkOsCFunc!(.gtk_drag_begin);
1633     mixin ForwardGtkOsCFunc!(.gtk_drag_check_threshold);
1634     mixin ForwardGtkOsCFunc!(.gtk_drag_dest_find_target);
1635     mixin ForwardGtkOsCFunc!(.gtk_drag_dest_set);
1636     mixin ForwardGtkOsCFunc!(.gtk_drag_dest_unset);
1637     mixin ForwardGtkOsCFunc!(.gtk_drag_finish);
1638     mixin ForwardGtkOsCFunc!(.gtk_drag_get_data);
1639     mixin ForwardGtkOsCFunc!(.gtk_drag_set_icon_pixbuf);
1640     mixin ForwardGtkOsCFunc!(.gtk_drawing_area_new);
1641     mixin ForwardGtkOsCFunc!(.gtk_editable_copy_clipboard);
1642     mixin ForwardGtkOsCFunc!(.gtk_editable_cut_clipboard);
1643     mixin ForwardGtkOsCFunc!(.gtk_editable_delete_selection);
1644     mixin ForwardGtkOsCFunc!(.gtk_editable_delete_text);
1645     mixin ForwardGtkOsCFunc!(.gtk_editable_get_chars);
1646     mixin ForwardGtkOsCFunc!(.gtk_editable_get_editable);
1647     mixin ForwardGtkOsCFunc!(.gtk_editable_get_position);
1648     mixin ForwardGtkOsCFunc!(.gtk_editable_get_selection_bounds);
1649     mixin ForwardGtkOsCFunc!(.gtk_editable_insert_text);
1650     mixin ForwardGtkOsCFunc!(.gtk_editable_paste_clipboard);
1651     mixin ForwardGtkOsCFunc!(.gtk_editable_select_region);
1652     mixin ForwardGtkOsCFunc!(.gtk_editable_set_editable);
1653     mixin ForwardGtkOsCFunc!(.gtk_editable_set_position);
1654     mixin ForwardGtkOsCFunc!(.gtk_entry_get_invisible_char);
1655     mixin ForwardGtkOsCFunc!(.gtk_entry_get_layout );
1656     mixin ForwardGtkOsCFunc!(.gtk_entry_get_layout_offsets );
1657     mixin ForwardGtkOsCFunc!(.gtk_entry_text_index_to_layout_index );
1658     mixin ForwardGtkOsCFunc!(.gtk_entry_get_max_length);
1659     mixin ForwardGtkOsCFunc!(.gtk_entry_get_text);
1660     mixin ForwardGtkOsCFunc!(.FcConfigAppFontAddFile);
1661     mixin ForwardGtkOsCFunc!(.gtk_entry_get_visibility);
1662     mixin ForwardGtkOsCFunc!(.gtk_entry_new);
1663     mixin ForwardGtkOsCFunc!(.gtk_entry_set_activates_default);
1664     mixin ForwardGtkOsCFunc!(.gtk_entry_set_alignment);
1665     mixin ForwardGtkOsCFunc!(.gtk_entry_set_has_frame);
1666     mixin ForwardGtkOsCFunc!(.gtk_entry_set_invisible_char);
1667     mixin ForwardGtkOsCFunc!(.gtk_entry_set_max_length);
1668     mixin ForwardGtkOsCFunc!(.gtk_entry_set_text);
1669     mixin ForwardGtkOsCFunc!(.gtk_entry_set_visibility);
1670 
1671     mixin ForwardGtkOsCFunc!(.gtk_events_pending);
1672     mixin ForwardGtkOsCFunc!(.gtk_expander_get_expanded);
1673     mixin ForwardGtkOsCFunc!(.gtk_expander_get_label_widget);
1674     mixin ForwardGtkOsCFunc!(.gtk_expander_new);
1675     mixin ForwardGtkOsCFunc!(.gtk_expander_set_expanded);
1676     mixin ForwardGtkOsCFunc!(.gtk_expander_set_label);
1677     mixin ForwardGtkOsCFunc!(.gtk_expander_set_label_widget);
1678     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_add_filter);
1679     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_dialog_new2);
1680     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_get_current_folder);
1681     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_get_filename);
1682     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_get_filenames);
1683     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_get_filter);
1684     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_current_folder);
1685     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_current_name);
1686     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_do_overwrite_confirmation);
1687     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_extra_widget);
1688     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_filename);
1689     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_filter);
1690     mixin ForwardGtkOsCFunc!(.gtk_file_chooser_set_select_multiple);
1691     mixin ForwardGtkOsCFunc!(.gtk_file_filter_add_pattern);
1692     mixin ForwardGtkOsCFunc!(.gtk_file_filter_new);
1693     mixin ForwardGtkOsCFunc!(.gtk_file_filter_get_name);
1694     mixin ForwardGtkOsCFunc!(.gtk_file_filter_set_name);
1695     mixin ForwardGtkOsCFunc!(.gtk_file_selection_get_filename);
1696     mixin ForwardGtkOsCFunc!(.gtk_file_selection_get_selections);
1697     mixin ForwardGtkOsCFunc!(.gtk_file_selection_hide_fileop_buttons);
1698     mixin ForwardGtkOsCFunc!(.gtk_file_selection_new);
1699     mixin ForwardGtkOsCFunc!(.gtk_file_selection_set_filename);
1700     mixin ForwardGtkOsCFunc!(.gtk_file_selection_set_select_multiple);
1701     mixin ForwardGtkOsCFunc!(.gtk_fixed_move);
1702     mixin ForwardGtkOsCFunc!(.gtk_fixed_new);
1703     mixin ForwardGtkOsCFunc!(.gtk_fixed_set_has_window);
1704     mixin ForwardGtkOsCFunc!(.gtk_font_selection_dialog_get_font_name);
1705     mixin ForwardGtkOsCFunc!(.gtk_font_selection_dialog_new);
1706     mixin ForwardGtkOsCFunc!(.gtk_font_selection_dialog_set_font_name);
1707     mixin ForwardGtkOsCFunc!(.gtk_frame_new);
1708     mixin ForwardGtkOsCFunc!(.gtk_frame_get_label_widget);
1709     mixin ForwardGtkOsCFunc!(.gtk_frame_set_label);
1710     mixin ForwardGtkOsCFunc!(.gtk_frame_set_label_widget);
1711     mixin ForwardGtkOsCFunc!(.gtk_frame_set_shadow_type);
1712     mixin ForwardGtkOsCFunc!(.gtk_get_current_event);
1713     mixin ForwardGtkOsCFunc!(.gtk_get_current_event_state );
1714     mixin ForwardGtkOsCFunc!(.gtk_get_current_event_time);
1715     mixin ForwardGtkOsCFunc!(.gtk_get_default_language);
1716     mixin ForwardGtkOsCFunc!(.gtk_get_event_widget);
1717     mixin ForwardGtkOsCFunc!(.gtk_grab_add);
1718     mixin ForwardGtkOsCFunc!(.gtk_grab_get_current);
1719     mixin ForwardGtkOsCFunc!(.gtk_grab_remove);
1720     mixin ForwardGtkOsCFunc!(.gtk_hbox_new);
1721     mixin ForwardGtkOsCFunc!(.gtk_hscale_new);
1722     mixin ForwardGtkOsCFunc!(.gtk_hscrollbar_new);
1723     mixin ForwardGtkOsCFunc!(.gtk_hseparator_new);
1724     mixin ForwardGtkOsCFunc!(.gtk_icon_factory_lookup_default);
1725     mixin ForwardGtkOsCFunc!(.gtk_icon_source_free);
1726     mixin ForwardGtkOsCFunc!(.gtk_icon_source_new);
1727     mixin ForwardGtkOsCFunc!(.gtk_icon_source_set_pixbuf);
1728     mixin ForwardGtkOsCFunc!(.gtk_icon_set_render_icon);
1729     mixin ForwardGtkOsCFunc!(.gtk_im_context_filter_keypress);
1730     mixin ForwardGtkOsCFunc!(.gtk_im_context_focus_in);
1731     mixin ForwardGtkOsCFunc!(.gtk_im_context_focus_out);
1732     mixin ForwardGtkOsCFunc!(.gtk_im_context_get_preedit_string);
1733     mixin ForwardGtkOsCFunc!(.gtk_im_context_get_type);
1734     mixin ForwardGtkOsCFunc!(.gtk_im_context_reset);
1735     mixin ForwardGtkOsCFunc!(.gtk_im_context_set_client_window);
1736     mixin ForwardGtkOsCFunc!(.gtk_im_context_set_cursor_location);
1737     mixin ForwardGtkOsCFunc!(.gtk_im_multicontext_append_menuitems );
1738     mixin ForwardGtkOsCFunc!(.gtk_im_multicontext_new);
1739     mixin ForwardGtkOsCFunc!(.gtk_image_menu_item_new_with_label);
1740     mixin ForwardGtkOsCFunc!(.gtk_image_menu_item_set_image);
1741     mixin ForwardGtkOsCFunc!(.gtk_image_new);
1742     mixin ForwardGtkOsCFunc!(.gtk_image_new_from_pixbuf);
1743     mixin ForwardGtkOsCFunc!(.gtk_image_new_from_pixmap);
1744     mixin ForwardGtkOsCFunc!(.gtk_image_set_from_pixbuf);
1745     mixin ForwardGtkOsCFunc!(.gtk_image_set_from_pixmap);
1746     mixin ForwardGtkOsCFunc!(.gtk_init_check);
1747     mixin ForwardGtkOsCFunc!(.gtk_label_get_layout);
1748     mixin ForwardGtkOsCFunc!(.gtk_label_get_mnemonic_keyval);
1749     mixin ForwardGtkOsCFunc!(.gtk_label_new);
1750     mixin ForwardGtkOsCFunc!(.gtk_label_new_with_mnemonic);
1751     mixin ForwardGtkOsCFunc!(.gtk_label_set_attributes);
1752     mixin ForwardGtkOsCFunc!(.gtk_label_set_justify);
1753     mixin ForwardGtkOsCFunc!(.gtk_label_set_line_wrap);
1754     mixin ForwardGtkOsCFunc!(.gtk_label_set_line_wrap_mode);
1755     mixin ForwardGtkOsCFunc!(.gtk_label_set_text);
1756     mixin ForwardGtkOsCFunc!(.gtk_label_set_text_with_mnemonic);
1757     mixin ForwardGtkOsCFunc!(.gtk_list_append_items);
1758     mixin ForwardGtkOsCFunc!(.gtk_list_clear_items);
1759     mixin ForwardGtkOsCFunc!(.gtk_list_insert_items);
1760     mixin ForwardGtkOsCFunc!(.gtk_list_item_new_with_label);
1761     mixin ForwardGtkOsCFunc!(.gtk_list_remove_items);
1762     mixin ForwardGtkOsCFunc!(.gtk_list_select_item);
1763     mixin ForwardGtkOsCFunc!(.gtk_list_unselect_all);
1764     mixin ForwardGtkOsCFunc!(.gtk_list_unselect_item);
1765     mixin ForwardGtkOsCFunc!(.gtk_list_store_append);
1766     mixin ForwardGtkOsCFunc!(.gtk_list_store_clear);
1767     mixin ForwardGtkOsCFunc!(.gtk_list_store_insert);
1768     mixin ForwardGtkOsCFunc!(.gtk_list_store_newv);
1769     mixin ForwardGtkOsCFunc!(.gtk_list_store_remove);
1770     mixin ForwardGtkOsCFunc!(.gtk_list_store_set1);
1771     mixin ForwardGtkOsCFunc!(.gtk_main);
1772     mixin ForwardGtkOsCFunc!(.gtk_main_iteration);
1773     mixin ForwardGtkOsCFunc!(.gtk_main_do_event);
1774     mixin ForwardGtkOsCFunc!(.gtk_menu_bar_new);
1775     mixin ForwardGtkOsCFunc!(.gtk_menu_item_remove_submenu);
1776     mixin ForwardGtkOsCFunc!(.gtk_menu_item_get_submenu);
1777     mixin ForwardGtkOsCFunc!(.gtk_menu_item_set_submenu);
1778     mixin ForwardGtkOsCFunc!(.gtk_menu_new);
1779     mixin ForwardGtkOsCFunc!(.gtk_menu_popdown);
1780     mixin ForwardGtkOsCFunc!(.gtk_menu_popup);
1781     mixin ForwardGtkOsCFunc!(.gtk_menu_shell_deactivate);
1782     mixin ForwardGtkOsCFunc!(.gtk_menu_shell_insert);
1783     mixin ForwardGtkOsCFunc!(.gtk_menu_shell_select_item);
1784     mixin ForwardGtkOsCFunc!(.gtk_menu_shell_set_take_focus);
1785     mixin ForwardGtkOsCFunc!(.gtk_message_dialog_new);
1786     mixin ForwardGtkOsCFunc!(.gtk_misc_set_alignment);
1787     mixin ForwardGtkOsCFunc!(.gtk_notebook_get_current_page);
1788     mixin ForwardGtkOsCFunc!(.gtk_notebook_get_scrollable);
1789     mixin ForwardGtkOsCFunc!(.gtk_notebook_insert_page);
1790     mixin ForwardGtkOsCFunc!(.gtk_notebook_new);
1791     mixin ForwardGtkOsCFunc!(.gtk_notebook_next_page);
1792     mixin ForwardGtkOsCFunc!(.gtk_notebook_prev_page);
1793     mixin ForwardGtkOsCFunc!(.gtk_notebook_remove_page);
1794     mixin ForwardGtkOsCFunc!(.gtk_notebook_set_current_page);
1795     mixin ForwardGtkOsCFunc!(.gtk_notebook_set_scrollable);
1796     mixin ForwardGtkOsCFunc!(.gtk_notebook_set_show_tabs);
1797     mixin ForwardGtkOsCFunc!(.gtk_notebook_set_tab_pos);
1798     mixin ForwardGtkOsCFunc!(.gtk_object_sink);
1799     mixin ForwardGtkOsCFunc!(.gtk_page_setup_new );
1800     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_orientation);
1801     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_orientation);
1802     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_paper_size);
1803     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_paper_size);
1804     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_top_margin);
1805     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_top_margin);
1806     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_bottom_margin);
1807     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_bottom_margin);
1808     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_left_margin);
1809     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_left_margin);
1810     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_right_margin);
1811     mixin ForwardGtkOsCFunc!(.gtk_page_setup_set_right_margin);
1812     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_paper_width);
1813     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_paper_height);
1814     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_page_width);
1815     mixin ForwardGtkOsCFunc!(.gtk_page_setup_get_page_height);
1816     mixin ForwardGtkOsCFunc!(.gtk_paint_handle);
1817     mixin ForwardGtkOsCFunc!(.gtk_paint_flat_box);
1818     mixin ForwardGtkOsCFunc!(.gtk_paint_focus);
1819     mixin ForwardGtkOsCFunc!(.gtk_paint_option);
1820     mixin ForwardGtkOsCFunc!(.gtk_paint_slider);
1821     mixin ForwardGtkOsCFunc!(.gtk_paint_tab);
1822     mixin ForwardGtkOsCFunc!(.gtk_paint_arrow);
1823     mixin ForwardGtkOsCFunc!(.gtk_paint_box);
1824     mixin ForwardGtkOsCFunc!(.gtk_paint_box_gap);
1825     mixin ForwardGtkOsCFunc!(.gtk_paint_check);
1826     mixin ForwardGtkOsCFunc!(.gtk_paint_expander);
1827     mixin ForwardGtkOsCFunc!(.gtk_paint_extension);
1828     mixin ForwardGtkOsCFunc!(.gtk_paint_hline);
1829     mixin ForwardGtkOsCFunc!(.gtk_paint_layout);
1830     mixin ForwardGtkOsCFunc!(.gtk_paint_shadow_gap);
1831     mixin ForwardGtkOsCFunc!(.gtk_paint_shadow);
1832     mixin ForwardGtkOsCFunc!(.gtk_paint_vline);
1833     mixin ForwardGtkOsCFunc!(.gtk_paper_size_new);
1834     mixin ForwardGtkOsCFunc!(.gtk_paper_size_new_from_ppd);
1835     mixin ForwardGtkOsCFunc!(.gtk_paper_size_new_custom);
1836     mixin ForwardGtkOsCFunc!(.gtk_paper_size_get_name);
1837     mixin ForwardGtkOsCFunc!(.gtk_paper_size_get_display_name);
1838     mixin ForwardGtkOsCFunc!(.gtk_paper_size_get_ppd_name);
1839     mixin ForwardGtkOsCFunc!(.gtk_paper_size_get_width);
1840     mixin ForwardGtkOsCFunc!(.gtk_paper_size_get_height);
1841     mixin ForwardGtkOsCFunc!(.gtk_paper_size_is_custom);
1842     mixin ForwardGtkOsCFunc!(.gtk_paper_size_free);
1843     mixin ForwardGtkOsCFunc!(.gtk_plug_get_id);
1844     mixin ForwardGtkOsCFunc!(.gtk_plug_new);
1845     mixin ForwardGtkOsCFunc!(.gtk_printer_get_backend);
1846     mixin ForwardGtkOsCFunc!(.gtk_printer_get_name);
1847     mixin ForwardGtkOsCFunc!(.gtk_printer_is_default);
1848     mixin ForwardGtkOsCFunc!(.gtk_enumerate_printers);
1849     mixin ForwardGtkOsCFunc!(.gtk_print_job_new);
1850     mixin ForwardGtkOsCFunc!(.gtk_print_job_get_settings);
1851     mixin ForwardGtkOsCFunc!(.gtk_print_job_get_printer);
1852     mixin ForwardGtkOsCFunc!(.gtk_print_job_get_title);
1853     mixin ForwardGtkOsCFunc!(.gtk_print_job_get_status);
1854     mixin ForwardGtkOsCFunc!(.gtk_print_job_set_source_file);
1855     mixin ForwardGtkOsCFunc!(.gtk_print_job_get_surface);
1856     mixin ForwardGtkOsCFunc!(.gtk_print_job_send);
1857     mixin ForwardGtkOsCFunc!(.gtk_print_settings_new);
1858     mixin ForwardGtkOsCFunc!(.gtk_print_settings_foreach);
1859     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get);
1860     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set);
1861     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_printer);
1862     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_printer);
1863     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_orientation);
1864     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_orientation);
1865     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_collate);
1866     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_collate);
1867     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_n_copies);
1868     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_n_copies);
1869     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_print_pages);
1870     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_print_pages);
1871     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_page_ranges);
1872     mixin ForwardGtkOsCFunc!(.gtk_print_settings_set_page_ranges);
1873     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_paper_width);
1874     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_paper_height);
1875     mixin ForwardGtkOsCFunc!(.gtk_print_settings_get_resolution);
1876     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_new);
1877     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_set_page_setup);
1878     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_get_page_setup);
1879     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_set_current_page);
1880     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_get_current_page);
1881     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_set_settings);
1882     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_get_settings);
1883     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_get_selected_printer);
1884     mixin ForwardGtkOsCFunc!(.gtk_print_unix_dialog_set_manual_capabilities);
1885     mixin ForwardGtkOsCFunc!(.gtk_progress_bar_new);
1886     mixin ForwardGtkOsCFunc!(.gtk_progress_bar_pulse);
1887     mixin ForwardGtkOsCFunc!(.gtk_progress_bar_set_fraction);
1888     mixin ForwardGtkOsCFunc!(.gtk_progress_bar_set_orientation);
1889     mixin ForwardGtkOsCFunc!(.gtk_radio_button_get_group);
1890     mixin ForwardGtkOsCFunc!(.gtk_radio_button_new);
1891     mixin ForwardGtkOsCFunc!(.gtk_radio_menu_item_get_group);
1892     mixin ForwardGtkOsCFunc!(.gtk_radio_menu_item_new);
1893     mixin ForwardGtkOsCFunc!(.gtk_radio_menu_item_new_with_label);
1894     mixin ForwardGtkOsCFunc!(.gtk_range_get_adjustment);
1895     mixin ForwardGtkOsCFunc!(.gtk_range_set_increments);
1896     mixin ForwardGtkOsCFunc!(.gtk_range_set_inverted);
1897     mixin ForwardGtkOsCFunc!(.gtk_range_set_range);
1898     mixin ForwardGtkOsCFunc!(.gtk_range_set_value);
1899     mixin ForwardGtkOsCFunc!(.gtk_rc_parse_string);
1900 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_get_bg_pixmap_name);
1901 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_get_color_flags);
1902 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_set_bg);
1903 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_set_bg_pixmap_name);
1904 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_set_color_flags);
1905     mixin ForwardGtkOsCFunc!(.gtk_scale_set_digits);
1906     mixin ForwardGtkOsCFunc!(.gtk_scale_set_draw_value);
1907 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_set_fg);
1908 //    mixin ForwardGtkOsCFunc!(.gtk_rc_style_set_text);
1909     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_add_with_viewport);
1910     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_hadjustment);
1911     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_policy);
1912     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_shadow_type);
1913     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_vadjustment);
1914     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_new);
1915     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_set_placement);
1916     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_set_policy);
1917     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_set_shadow_type);
1918     mixin ForwardGtkOsCFunc!(.gtk_settings_get_default);
1919     mixin ForwardGtkOsCFunc!(.gtk_selection_data_free);
1920     mixin ForwardGtkOsCFunc!(.gtk_selection_data_set);
1921     mixin ForwardGtkOsCFunc!(.gtk_separator_menu_item_new);
1922     mixin ForwardGtkOsCFunc!(.gtk_set_locale);
1923     mixin ForwardGtkOsCFunc!(.gtk_socket_get_id);
1924     mixin ForwardGtkOsCFunc!(.gtk_socket_new);
1925     mixin ForwardGtkOsCFunc!(.gtk_spin_button_new);
1926     mixin ForwardGtkOsCFunc!(.gtk_spin_button_get_adjustment);
1927     mixin ForwardGtkOsCFunc!(.gtk_spin_button_get_digits);
1928     mixin ForwardGtkOsCFunc!(.gtk_spin_button_set_digits);
1929     mixin ForwardGtkOsCFunc!(.gtk_spin_button_set_increments);
1930     mixin ForwardGtkOsCFunc!(.gtk_spin_button_set_range);
1931     mixin ForwardGtkOsCFunc!(.gtk_spin_button_set_value);
1932     mixin ForwardGtkOsCFunc!(.gtk_spin_button_set_wrap);
1933     mixin ForwardGtkOsCFunc!(.gtk_spin_button_update);
1934 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_base);
1935 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_black);
1936 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_bg);
1937 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_dark);
1938 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_fg);
1939 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_fg_gc);
1940 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_bg_gc);
1941 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_light_gc);
1942 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_dark_gc);
1943 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_mid_gc);
1944 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_text_gc);
1945 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_text_aa_gc);
1946 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_black_gc);
1947 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_white_gc);
1948 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_font_desc);
1949 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_light);
1950 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_text);
1951 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_xthickness);
1952 //    mixin ForwardGtkOsCFunc!(.gtk_style_get_ythickness);
1953     mixin ForwardGtkOsCFunc!(.gtk_style_render_icon);
1954     mixin ForwardGtkOsCFunc!(.gtk_target_list_new);
1955     mixin ForwardGtkOsCFunc!(.gtk_target_list_unref);
1956     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_copy_clipboard);
1957     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_cut_clipboard);
1958     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_delete);
1959     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_bounds);
1960     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_char_count);
1961     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_end_iter);
1962     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_insert);
1963     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_iter_at_line);
1964     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_iter_at_mark);
1965     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_iter_at_offset);
1966     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_line_count);
1967     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_selection_bound);
1968     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_selection_bounds);
1969     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_get_text);
1970     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_insert);
1971     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_move_mark);
1972     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_paste_clipboard);
1973     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_place_cursor);
1974     mixin ForwardGtkOsCFunc!(.gtk_text_buffer_set_text);
1975     mixin ForwardGtkOsCFunc!(.gtk_text_iter_get_line);
1976     mixin ForwardGtkOsCFunc!(.gtk_text_iter_get_offset);
1977     mixin ForwardGtkOsCFunc!(.gtk_text_view_buffer_to_window_coords);
1978     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_buffer);
1979     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_editable);
1980     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_iter_at_location);
1981     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_iter_location);
1982     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_line_at_y);
1983     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_visible_rect);
1984     mixin ForwardGtkOsCFunc!(.gtk_text_view_get_window);
1985     mixin ForwardGtkOsCFunc!(.gtk_text_view_new);
1986     mixin ForwardGtkOsCFunc!(.gtk_text_view_scroll_mark_onscreen);
1987     mixin ForwardGtkOsCFunc!(.gtk_text_view_scroll_to_iter);
1988     mixin ForwardGtkOsCFunc!(.gtk_text_view_set_editable);
1989     mixin ForwardGtkOsCFunc!(.gtk_text_view_set_justification);
1990     mixin ForwardGtkOsCFunc!(.gtk_text_view_set_tabs);
1991     mixin ForwardGtkOsCFunc!(.gtk_text_view_set_wrap_mode);
1992     mixin ForwardGtkOsCFunc!(.gtk_text_view_window_to_buffer_coords);
1993     mixin ForwardGtkOsCFunc!(.gtk_timeout_add);
1994     mixin ForwardGtkOsCFunc!(.gtk_timeout_remove);
1995     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_get_active);
1996     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_new);
1997     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_get_inconsistent);
1998     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_set_active);
1999     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_set_inconsistent);
2000     mixin ForwardGtkOsCFunc!(.gtk_toggle_button_set_mode);
2001     mixin ForwardGtkOsCFunc!(.gtk_toolbar_insert_widget);
2002     mixin ForwardGtkOsCFunc!(.gtk_toolbar_new);
2003     mixin ForwardGtkOsCFunc!(.gtk_toolbar_set_orientation);
2004     mixin ForwardGtkOsCFunc!(.gtk_tooltips_data_get);
2005     mixin ForwardGtkOsCFunc!(.gtk_tooltips_disable);
2006     mixin ForwardGtkOsCFunc!(.gtk_tooltips_enable);
2007     mixin ForwardGtkOsCFunc!(.gtk_tooltips_new);
2008     mixin ForwardGtkOsCFunc!(.gtk_tooltips_force_window);
2009     mixin ForwardGtkOsCFunc!(.gtk_tooltips_set_tip);
2010     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get1);
2011     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get_iter);
2012     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get_iter_first);
2013     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get_n_columns);
2014     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get_path);
2015     mixin ForwardGtkOsCFunc!(.gtk_tree_model_get_type);
2016     mixin ForwardGtkOsCFunc!(.gtk_tree_model_iter_children);
2017     mixin ForwardGtkOsCFunc!(.gtk_tree_model_iter_n_children);
2018     mixin ForwardGtkOsCFunc!(.gtk_tree_model_iter_next);
2019     mixin ForwardGtkOsCFunc!(.gtk_tree_model_iter_nth_child);
2020     mixin ForwardGtkOsCFunc!(.gtk_tree_path_append_index);
2021     mixin ForwardGtkOsCFunc!(.gtk_tree_path_compare);
2022     mixin ForwardGtkOsCFunc!(.gtk_tree_path_down);
2023     mixin ForwardGtkOsCFunc!(.gtk_tree_path_free);
2024     mixin ForwardGtkOsCFunc!(.gtk_tree_path_get_depth);
2025     mixin ForwardGtkOsCFunc!(.gtk_tree_path_get_indices);
2026     mixin ForwardGtkOsCFunc!(.gtk_tree_path_new);
2027     mixin ForwardGtkOsCFunc!(.gtk_tree_path_new_first);
2028     mixin ForwardGtkOsCFunc!(.gtk_tree_path_new_from_string);
2029     mixin ForwardGtkOsCFunc!(.gtk_tree_path_next);
2030     mixin ForwardGtkOsCFunc!(.gtk_tree_path_prev);
2031     mixin ForwardGtkOsCFunc!(.gtk_tree_path_up);
2032     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_count_selected_rows);
2033     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_get_selected);
2034     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_get_selected_rows);
2035     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_path_is_selected);
2036     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_select_all);
2037     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_select_iter);
2038     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_selected_foreach);
2039     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_set_mode);
2040     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_unselect_all);
2041     mixin ForwardGtkOsCFunc!(.gtk_tree_selection_unselect_iter);
2042     mixin ForwardGtkOsCFunc!(.gtk_tree_store_append);
2043     mixin ForwardGtkOsCFunc!(.gtk_tree_store_clear);
2044     mixin ForwardGtkOsCFunc!(.gtk_tree_store_insert);
2045     mixin ForwardGtkOsCFunc!(.gtk_tree_store_newv);
2046     mixin ForwardGtkOsCFunc!(.gtk_tree_store_remove);
2047     mixin ForwardGtkOsCFunc!(.gtk_tree_store_set1);
2048     mixin ForwardGtkOsCFunc!(.gtk_tree_view_create_row_drag_icon);
2049     mixin ForwardGtkOsCFunc!(.gtk_tree_view_collapse_row);
2050     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_add_attribute);
2051     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_cell_get_position);
2052     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_cell_get_size);
2053     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_cell_set_cell_data);
2054     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_clear);
2055     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_cell_renderers);
2056     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_fixed_width);
2057     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_reorderable);
2058     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_resizable);
2059     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_sizing);
2060     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_spacing);
2061     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_visible);
2062     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_sort_indicator);
2063     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_sort_order);
2064     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_get_width);
2065     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_new);
2066     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_pack_start);
2067     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_pack_end);
2068     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_alignment);
2069     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_cell_data_func);
2070     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_clickable);
2071     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_fixed_width);
2072     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_min_width);
2073     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_reorderable);
2074     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_resizable);
2075     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_sizing);
2076     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_sort_indicator);
2077     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_sort_order);
2078     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_title);
2079     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_visible );
2080     mixin ForwardGtkOsCFunc!(.gtk_tree_view_column_set_widget);
2081     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_drag_dest_row);
2082     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_enable_search );
2083     mixin ForwardGtkOsCFunc!(.gtk_tree_view_expand_row);
2084     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_background_area);
2085     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_bin_window);
2086     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_cell_area);
2087     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_expander_column);
2088     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_column);
2089     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_columns);
2090     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_cursor);
2091     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_headers_visible);
2092     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_path_at_pos);
2093     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_rules_hint);
2094     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_selection);
2095     mixin ForwardGtkOsCFunc!(.gtk_tree_view_get_visible_rect);
2096     mixin ForwardGtkOsCFunc!(.gtk_tree_view_insert_column);
2097     mixin ForwardGtkOsCFunc!(.gtk_tree_view_move_column_after);
2098     mixin ForwardGtkOsCFunc!(.gtk_tree_view_new_with_model);
2099     mixin ForwardGtkOsCFunc!(.gtk_tree_view_remove_column);
2100     mixin ForwardGtkOsCFunc!(.gtk_tree_view_row_expanded);
2101     mixin ForwardGtkOsCFunc!(.gtk_tree_view_scroll_to_cell);
2102     mixin ForwardGtkOsCFunc!(.gtk_tree_view_scroll_to_point );
2103     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_cursor);
2104     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_headers_visible);
2105     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_model);
2106     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_rules_hint);
2107     mixin ForwardGtkOsCFunc!(.gtk_tree_view_set_search_column);
2108     mixin ForwardGtkOsCFunc!(.gtk_tree_view_tree_to_widget_coords);
2109     mixin ForwardGtkOsCFunc!(.gtk_tree_view_unset_rows_drag_dest);
2110     mixin ForwardGtkOsCFunc!(.gtk_tree_view_widget_to_tree_coords);
2111     mixin ForwardGtkOsCFunc!(.gtk_vbox_new);
2112     mixin ForwardGtkOsCFunc!(.gtk_vscale_new);
2113     mixin ForwardGtkOsCFunc!(.gtk_vscrollbar_new);
2114     mixin ForwardGtkOsCFunc!(.gtk_vseparator_new);
2115     mixin ForwardGtkOsCFunc!(.gtk_widget_add_accelerator);
2116     mixin ForwardGtkOsCFunc!(.gtk_widget_add_events);
2117     mixin ForwardGtkOsCFunc!(.gtk_widget_child_focus);
2118     mixin ForwardGtkOsCFunc!(.gtk_widget_create_pango_layout);
2119     mixin ForwardGtkOsCFunc!(.gtk_widget_destroy);
2120     mixin ForwardGtkOsCFunc!(.gtk_widget_event);
2121     mixin ForwardGtkOsCFunc!(.gtk_widget_get_accessible );
2122     mixin ForwardGtkOsCFunc!(.gtk_widget_get_child_visible );
2123     mixin ForwardGtkOsCFunc!(.gtk_widget_get_default_direction);
2124     mixin ForwardGtkOsCFunc!(.gtk_widget_get_default_style);
2125     mixin ForwardGtkOsCFunc!(.gtk_widget_get_direction);
2126     mixin ForwardGtkOsCFunc!(.gtk_widget_get_events);
2127     mixin ForwardGtkOsCFunc!(.gtk_widget_get_modifier_style);
2128     mixin ForwardGtkOsCFunc!(.gtk_widget_get_pango_context);
2129     mixin ForwardGtkOsCFunc!(.gtk_widget_get_parent);
2130     mixin ForwardGtkOsCFunc!(.gtk_widget_get_style);
2131     mixin ForwardGtkOsCFunc!(.gtk_widget_get_size_request);
2132     mixin ForwardGtkOsCFunc!(.gtk_widget_get_toplevel );
2133     mixin ForwardGtkOsCFunc!(.gtk_widget_grab_focus);
2134     mixin ForwardGtkOsCFunc!(.gtk_widget_hide);
2135     mixin ForwardGtkOsCFunc!(.gtk_widget_is_composited);
2136     mixin ForwardGtkOsCFunc!(.gtk_widget_is_focus);
2137     mixin ForwardGtkOsCFunc!(.gtk_widget_map);
2138     mixin ForwardGtkOsCFunc!(.gtk_widget_mnemonic_activate);
2139     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_base);
2140     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_bg);
2141     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_fg);
2142     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_font);
2143     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_style);
2144     mixin ForwardGtkOsCFunc!(.gtk_widget_modify_text);
2145     mixin ForwardGtkOsCFunc!(.gtk_widget_queue_resize);
2146     mixin ForwardGtkOsCFunc!(.gtk_widget_realize);
2147     mixin ForwardGtkOsCFunc!(.gtk_widget_remove_accelerator);
2148     mixin ForwardGtkOsCFunc!(.gtk_widget_reparent);
2149     mixin ForwardGtkOsCFunc!(.gtk_widget_send_expose);
2150     mixin ForwardGtkOsCFunc!(.gtk_widget_set_app_paintable);
2151     mixin ForwardGtkOsCFunc!(.gtk_widget_set_default_direction);
2152     mixin ForwardGtkOsCFunc!(.gtk_widget_set_direction);
2153     mixin ForwardGtkOsCFunc!(.gtk_widget_set_double_buffered);
2154     mixin ForwardGtkOsCFunc!(.gtk_widget_set_name);
2155     mixin ForwardGtkOsCFunc!(.gtk_widget_set_redraw_on_allocate);
2156     mixin ForwardGtkOsCFunc!(.gtk_widget_set_sensitive);
2157     mixin ForwardGtkOsCFunc!(.gtk_widget_set_size_request);
2158     mixin ForwardGtkOsCFunc!(.gtk_widget_set_state);
2159     mixin ForwardGtkOsCFunc!(.gtk_widget_set_style);
2160     mixin ForwardGtkOsCFunc!(.gtk_widget_shape_combine_mask);
2161     mixin ForwardGtkOsCFunc!(.gtk_widget_show);
2162     mixin ForwardGtkOsCFunc!(.gtk_widget_show_now);
2163     mixin ForwardGtkOsCFunc!(.gtk_widget_size_allocate);
2164     mixin ForwardGtkOsCFunc!(.gtk_widget_size_request);
2165     mixin ForwardGtkOsCFunc!(.gtk_widget_style_get1); // 1=get one property, see above
2166     mixin ForwardGtkOsCFunc!(.gtk_widget_translate_coordinates);
2167     mixin ForwardGtkOsCFunc!(.gtk_widget_unrealize);
2168     mixin ForwardGtkOsCFunc!(.gtk_window_activate_default);
2169     mixin ForwardGtkOsCFunc!(.gtk_window_add_accel_group);
2170     mixin ForwardGtkOsCFunc!(.gtk_window_deiconify);
2171     mixin ForwardGtkOsCFunc!(.gtk_window_get_focus);
2172     mixin ForwardGtkOsCFunc!(.gtk_window_get_group);
2173     mixin ForwardGtkOsCFunc!(.gtk_window_get_icon_list);
2174     mixin ForwardGtkOsCFunc!(.gtk_window_get_modal);
2175     mixin ForwardGtkOsCFunc!(.gtk_window_get_mnemonic_modifier);
2176     mixin ForwardGtkOsCFunc!(.gtk_window_get_opacity);
2177     mixin ForwardGtkOsCFunc!(.gtk_window_get_position);
2178     mixin ForwardGtkOsCFunc!(.gtk_window_get_size);
2179     mixin ForwardGtkOsCFunc!(.gtk_window_group_add_window);
2180     mixin ForwardGtkOsCFunc!(.gtk_window_group_remove_window);
2181     mixin ForwardGtkOsCFunc!(.gtk_window_group_new);
2182     mixin ForwardGtkOsCFunc!(.gtk_window_iconify);
2183     mixin ForwardGtkOsCFunc!(.gtk_window_list_toplevels);
2184     mixin ForwardGtkOsCFunc!(.gtk_window_maximize);
2185     mixin ForwardGtkOsCFunc!(.gtk_window_fullscreen);
2186     mixin ForwardGtkOsCFunc!(.gtk_window_unfullscreen);
2187     mixin ForwardGtkOsCFunc!(.gtk_window_move);
2188     mixin ForwardGtkOsCFunc!(.gtk_window_new);
2189     mixin ForwardGtkOsCFunc!(.gtk_window_present);
2190     mixin ForwardGtkOsCFunc!(.gtk_window_remove_accel_group);
2191     mixin ForwardGtkOsCFunc!(.gtk_window_resize);
2192     mixin ForwardGtkOsCFunc!(.gtk_window_set_default);
2193     mixin ForwardGtkOsCFunc!(.gtk_window_set_destroy_with_parent);
2194     mixin ForwardGtkOsCFunc!(.gtk_window_set_keep_below);
2195     mixin ForwardGtkOsCFunc!(.gtk_window_set_geometry_hints);
2196     mixin ForwardGtkOsCFunc!(.gtk_window_set_icon_list);
2197     mixin ForwardGtkOsCFunc!(.gtk_window_set_modal);
2198     mixin ForwardGtkOsCFunc!(.gtk_window_set_opacity);
2199     mixin ForwardGtkOsCFunc!(.gtk_widget_set_tooltip_text);
2200     mixin ForwardGtkOsCFunc!(.gtk_widget_set_parent_window);
2201     mixin ForwardGtkOsCFunc!(.gtk_window_set_resizable);
2202     mixin ForwardGtkOsCFunc!(.gtk_window_set_title);
2203     mixin ForwardGtkOsCFunc!(.gtk_window_set_skip_taskbar_hint);
2204     mixin ForwardGtkOsCFunc!(.gtk_window_set_type_hint);
2205     mixin ForwardGtkOsCFunc!(.gtk_window_set_transient_for);
2206     mixin ForwardGtkOsCFunc!(.gtk_window_unmaximize);
2207     mixin ForwardGtkOsCFunc!(.gtk_widget_get_window);
2208     mixin ForwardGtkOsCFunc!(.gtk_widget_get_allocation);
2209     mixin ForwardGtkOsCFunc!(.gtk_widget_set_allocation);
2210     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_hscrollbar);
2211     mixin ForwardGtkOsCFunc!(.gtk_scrolled_window_get_vscrollbar);
2212     mixin ForwardGtkOsCFunc!(.gtk_widget_set_tooltip_window);
2213     mixin ForwardGtkOsCFunc!(.gtk_widget_is_toplevel);
2214     mixin ForwardGtkOsCFunc!(.gtk_widget_get_has_window);
2215     mixin ForwardGtkOsCFunc!(.gtk_widget_get_realized);
2216     mixin ForwardGtkOsCFunc!(.gtk_widget_get_mapped);
2217     mixin ForwardGtkOsCFunc!(.gtk_widget_get_visible);
2218     mixin ForwardGtkOsCFunc!(.gtk_widget_is_drawable);
2219     mixin ForwardGtkOsCFunc!(.gtk_widget_get_sensitive);
2220     mixin ForwardGtkOsCFunc!(.gtk_widget_is_sensitive);
2221     mixin ForwardGtkOsCFunc!(.gtk_widget_get_can_focus);
2222     mixin ForwardGtkOsCFunc!(.gtk_widget_has_focus);
2223     mixin ForwardGtkOsCFunc!(.gtk_widget_get_can_default);
2224     mixin ForwardGtkOsCFunc!(.gtk_widget_get_receives_default);
2225     mixin ForwardGtkOsCFunc!(.gtk_widget_has_default);
2226     mixin ForwardGtkOsCFunc!(.gtk_widget_has_grab);
2227     mixin ForwardGtkOsCFunc!(.gtk_widget_has_rc_style);
2228     mixin ForwardGtkOsCFunc!(.gtk_widget_get_app_paintable);
2229     mixin ForwardGtkOsCFunc!(.gtk_widget_get_double_buffered);
2230     mixin ForwardGtkOsCFunc!(.gtk_widget_get_state);
2231     mixin ForwardGtkOsCFunc!(.gtk_widget_set_has_window);
2232     mixin ForwardGtkOsCFunc!(.gtk_widget_set_realized);
2233     mixin ForwardGtkOsCFunc!(.gtk_widget_set_mapped);
2234     mixin ForwardGtkOsCFunc!(.gtk_widget_set_visible);
2235     mixin ForwardGtkOsCFunc!(.gtk_widget_set_can_focus);
2236     mixin ForwardGtkOsCFunc!(.gtk_widget_set_can_default);
2237     mixin ForwardGtkOsCFunc!(.gtk_widget_set_receives_default);
2238     mixin ForwardGtkOsCFunc!(.pango_attr_background_new );
2239     mixin ForwardGtkOsCFunc!(.pango_attr_font_desc_new);
2240     mixin ForwardGtkOsCFunc!(.pango_attr_foreground_new );
2241     mixin ForwardGtkOsCFunc!(.pango_attr_rise_new);
2242     mixin ForwardGtkOsCFunc!(.pango_attr_shape_new);
2243     mixin ForwardGtkOsCFunc!(.pango_attr_list_insert);
2244     mixin ForwardGtkOsCFunc!(.pango_attr_list_change);
2245     mixin ForwardGtkOsCFunc!(.pango_attr_list_get_iterator);
2246     mixin ForwardGtkOsCFunc!(.pango_attr_iterator_next);
2247     mixin ForwardGtkOsCFunc!(.pango_attr_iterator_range);
2248     mixin ForwardGtkOsCFunc!(.pango_attr_iterator_get);
2249     mixin ForwardGtkOsCFunc!(.pango_attr_iterator_get_attrs);
2250     mixin ForwardGtkOsCFunc!(.pango_attr_iterator_destroy);
2251     mixin ForwardGtkOsCFunc!(.pango_attr_list_new);
2252     mixin ForwardGtkOsCFunc!(.pango_attr_list_unref);
2253     mixin ForwardGtkOsCFunc!(.pango_attr_strikethrough_color_new);
2254     mixin ForwardGtkOsCFunc!(.pango_attr_strikethrough_new);
2255     mixin ForwardGtkOsCFunc!(.pango_attr_underline_color_new);
2256     mixin ForwardGtkOsCFunc!(.pango_attr_underline_new);
2257     mixin ForwardGtkOsCFunc!(.pango_attr_weight_new);
2258 //    mixin ForwardGtkOsCFunc!(.pango_cairo_font_map_get_default);
2259 //    mixin ForwardGtkOsCFunc!(.pango_cairo_font_map_new);
2260 //    mixin ForwardGtkOsCFunc!(.pango_cairo_font_map_create_context);
2261     mixin ForwardGtkOsCFunc!(.pango_cairo_create_layout);
2262     mixin ForwardGtkOsCFunc!(.pango_cairo_context_get_font_options);
2263     mixin ForwardGtkOsCFunc!(.pango_cairo_context_set_font_options);
2264 //    mixin ForwardGtkOsCFunc!(.pango_cairo_font_map_set_resolution);
2265     mixin ForwardGtkOsCFunc!(.pango_cairo_layout_path);
2266     mixin ForwardGtkOsCFunc!(.pango_cairo_show_layout);
2267     mixin ForwardGtkOsCFunc!(.pango_context_get_base_dir);
2268     mixin ForwardGtkOsCFunc!(.pango_context_get_language);
2269     mixin ForwardGtkOsCFunc!(.pango_context_get_metrics);
2270     mixin ForwardGtkOsCFunc!(.pango_context_list_families);
2271     mixin ForwardGtkOsCFunc!(.pango_context_set_base_dir);
2272     mixin ForwardGtkOsCFunc!(.pango_context_set_language);
2273     mixin ForwardGtkOsCFunc!(.pango_font_description_copy);
2274     mixin ForwardGtkOsCFunc!(.pango_font_description_free);
2275     mixin ForwardGtkOsCFunc!(.pango_font_description_from_string);
2276     mixin ForwardGtkOsCFunc!(.pango_font_description_get_family);
2277     mixin ForwardGtkOsCFunc!(.pango_font_description_get_size);
2278     mixin ForwardGtkOsCFunc!(.pango_font_description_get_style);
2279     mixin ForwardGtkOsCFunc!(.pango_font_description_get_weight);
2280     mixin ForwardGtkOsCFunc!(.pango_font_description_new);
2281     mixin ForwardGtkOsCFunc!(.pango_font_description_set_family);
2282     mixin ForwardGtkOsCFunc!(.pango_font_description_set_size);
2283     mixin ForwardGtkOsCFunc!(.pango_font_description_set_stretch);
2284     mixin ForwardGtkOsCFunc!(.pango_font_description_set_style);
2285     mixin ForwardGtkOsCFunc!(.pango_font_description_set_weight);
2286     mixin ForwardGtkOsCFunc!(.pango_font_description_to_string);
2287     mixin ForwardGtkOsCFunc!(.pango_font_face_describe);
2288     mixin ForwardGtkOsCFunc!(.pango_font_family_get_name);
2289     mixin ForwardGtkOsCFunc!(.pango_font_family_list_faces);
2290     mixin ForwardGtkOsCFunc!(.pango_font_get_metrics);
2291     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_approximate_char_width);
2292     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_ascent);
2293     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_descent);
2294     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_underline_thickness);
2295     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_underline_position);
2296     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_strikethrough_thickness);
2297     mixin ForwardGtkOsCFunc!(.pango_font_metrics_get_strikethrough_position);
2298     mixin ForwardGtkOsCFunc!(.pango_font_metrics_unref);
2299     mixin ForwardGtkOsCFunc!(.pango_language_from_string);
2300     mixin ForwardGtkOsCFunc!(.pango_layout_context_changed);
2301     mixin ForwardGtkOsCFunc!(.pango_layout_get_alignment);
2302     mixin ForwardGtkOsCFunc!(.pango_layout_get_context);
2303     mixin ForwardGtkOsCFunc!(.pango_layout_get_attributes);
2304     mixin ForwardGtkOsCFunc!(.pango_layout_get_indent);
2305     mixin ForwardGtkOsCFunc!(.pango_layout_get_iter);
2306     mixin ForwardGtkOsCFunc!(.pango_layout_get_justify);
2307     mixin ForwardGtkOsCFunc!(.pango_layout_get_line);
2308     mixin ForwardGtkOsCFunc!(.pango_layout_get_line_count);
2309     mixin ForwardGtkOsCFunc!(.pango_layout_get_log_attrs);
2310     mixin ForwardGtkOsCFunc!(.pango_layout_get_size);
2311     mixin ForwardGtkOsCFunc!(.pango_layout_get_spacing);
2312     mixin ForwardGtkOsCFunc!(.pango_layout_get_tabs);
2313     mixin ForwardGtkOsCFunc!(.pango_layout_get_text);
2314     mixin ForwardGtkOsCFunc!(.pango_layout_get_width);
2315     mixin ForwardGtkOsCFunc!(.pango_layout_index_to_pos);
2316     mixin ForwardGtkOsCFunc!(.pango_layout_iter_free);
2317     mixin ForwardGtkOsCFunc!(.pango_layout_iter_get_line_extents);
2318     mixin ForwardGtkOsCFunc!(.pango_layout_iter_get_index);
2319     mixin ForwardGtkOsCFunc!(.pango_layout_iter_get_run);
2320     mixin ForwardGtkOsCFunc!(.pango_layout_iter_next_line);
2321     mixin ForwardGtkOsCFunc!(.pango_layout_iter_next_run);
2322     mixin ForwardGtkOsCFunc!(.pango_layout_line_get_extents);
2323     mixin ForwardGtkOsCFunc!(.pango_layout_line_x_to_index);
2324     mixin ForwardGtkOsCFunc!(.pango_layout_new);
2325     mixin ForwardGtkOsCFunc!(.pango_layout_set_alignment );
2326     mixin ForwardGtkOsCFunc!(.pango_layout_set_attributes);
2327     mixin ForwardGtkOsCFunc!(.pango_layout_set_auto_dir);
2328     mixin ForwardGtkOsCFunc!(.pango_layout_set_font_description);
2329     mixin ForwardGtkOsCFunc!(.pango_layout_set_indent);
2330     mixin ForwardGtkOsCFunc!(.pango_layout_set_justify);
2331     mixin ForwardGtkOsCFunc!(.pango_layout_set_single_paragraph_mode);
2332     mixin ForwardGtkOsCFunc!(.pango_layout_set_spacing);
2333     mixin ForwardGtkOsCFunc!(.pango_layout_set_tabs);
2334     mixin ForwardGtkOsCFunc!(.pango_layout_set_text);
2335     mixin ForwardGtkOsCFunc!(.pango_layout_set_width);
2336     mixin ForwardGtkOsCFunc!(.pango_layout_set_wrap );
2337     mixin ForwardGtkOsCFunc!(.pango_layout_xy_to_index);
2338     mixin ForwardGtkOsCFunc!(.pango_tab_array_get_size);
2339     mixin ForwardGtkOsCFunc!(.pango_tab_array_get_tabs);
2340     mixin ForwardGtkOsCFunc!(.pango_tab_array_free);
2341     mixin ForwardGtkOsCFunc!(.pango_tab_array_new);
2342     mixin ForwardGtkOsCFunc!(.pango_tab_array_set_tab);
2343     mixin ForwardGtkOsCFunc!(.atk_object_add_relationship );
2344 
2345     /* Field accessors */
2346 
2347     public static guint pango_layout_line_get_resolved_dir( PangoLayoutLine* line ){
2348         return line.resolved_dir();
2349     }
2350 
2351     static void    GTK_ACCEL_LABEL_SET_ACCEL_STRING( void *arg0, gchar * arg1 )
2352             { (cast(GtkAccelLabel*)arg0).accel_string = arg1; }
2353     static gchar*  GTK_ACCEL_LABEL_GET_ACCEL_STRING( void* arg0)
2354             { return (cast(GtkAccelLabel*)arg0).accel_string; }
2355 
2356     static GtkWidget* GTK_SCROLLED_WINDOW_HSCROLLBAR( void* arg0 )
2357             { return (cast(GtkScrolledWindow*)arg0).hscrollbar; }
2358     static GtkWidget* GTK_SCROLLED_WINDOW_VSCROLLBAR( void* arg0 )
2359             { return (cast(GtkScrolledWindow*)arg0).vscrollbar; }
2360 
2361     static gint GTK_SCROLLED_WINDOW_SCROLLBAR_SPACING( void* arg0)
2362     {
2363         return   ((cast(GtkScrolledWindowClass*) ((cast(GTypeInstance*) arg0).g_class) ).scrollbar_spacing >= 0 ?
2364                   (cast(GtkScrolledWindowClass*) ((cast(GTypeInstance*) arg0).g_class)).scrollbar_spacing : 3) ;
2365     }
2366 
2367     static gint GTK_WIDGET_HEIGHT( void* arg0 )
2368          { return (cast(GtkWidget*)arg0).allocation.height; }
2369     static void GTK_WIDGET_SET_HEIGHT( void* arg0, gint arg1)
2370          { (cast(GtkWidget*)arg0).allocation.height = arg1; }
2371     static gint GTK_WIDGET_WIDTH( void* arg0)
2372          { return (cast(GtkWidget*)arg0).allocation.width; }
2373     static void GTK_WIDGET_SET_WIDTH( void* arg0, gint arg1)
2374          { (cast(GtkWidget*)arg0).allocation.width = arg1; }
2375     static GdkWindow* GTK_WIDGET_WINDOW( void* arg0)
2376          { return (cast(GtkWidget*)arg0).window; }
2377     static gint GTK_WIDGET_X( void* arg0 )
2378          { return (cast(GtkWidget*)arg0).allocation.x; }
2379     static void GTK_WIDGET_SET_X( void* arg0, gint arg1)
2380          { (cast(GtkWidget*)arg0).allocation.x = arg1; }
2381     static gint GTK_WIDGET_Y( void* arg0 )
2382          { return (cast(GtkWidget*)arg0).allocation.y; }
2383     static void GTK_WIDGET_SET_Y( void* arg0, gint arg1)
2384          { (cast(GtkWidget*)arg0).allocation.y = arg1; }
2385     static gint GTK_WIDGET_REQUISITION_WIDTH( void* arg0 )
2386          { return (cast(GtkWidget*)arg0).requisition.width; }
2387     static gint GTK_WIDGET_REQUISITION_HEIGHT( void* arg0 )
2388          { return (cast(GtkWidget*)arg0).requisition.height; }
2389 
2390     static GtkIMContext* GTK_ENTRY_IM_CONTEXT( void* arg0 )
2391          { return (cast(GtkEntry*)arg0).im_context; }
2392 
2393     static GtkIMContext* GTK_TEXTVIEW_IM_CONTEXT( void* arg0)
2394          { return (cast(GtkTextView*)arg0).im_context; }
2395 
2396     static GtkWidget* GTK_TOOLTIPS_TIP_WINDOW( void* arg0)
2397          { return (cast(GtkTooltips*)arg0).tip_window; }
2398     static void GTK_TOOLTIPS_SET_ACTIVE( void* arg0, void*  arg1 )
2399          { (cast(GtkTooltips*)arg0).active_tips_data = cast(GtkTooltipsData*)arg1; }
2400 
2401     static gint  GDK_EVENT_TYPE( void* arg0 )
2402          { return (cast(GdkEvent*)arg0).type; }
2403     static GdkWindow* GDK_EVENT_WINDOW( void* arg0 )
2404          { return (cast(GdkEventAny*)arg0).window; }
2405     static gint  X_EVENT_TYPE( void* arg0 )
2406          { return (cast(XEvent*)arg0).type; }
2407     //Window X_EVENT_WINDOW( XAnyEvent* arg0 )
2408     //     { return arg0.window; }
2409 
2410 /+
2411 
2412     //gtk_rc_style_get_bg_pixmap_name(arg0, arg1) (arg0)->bg_pixmap_name[arg1]
2413     static char* gtk_rc_style_get_bg_pixmap_name( GtkRcStyle* arg0, int arg1 ) {
2414         return arg0.bg_pixmap_name[arg1];
2415     }
2416     //gtk_rc_style_get_color_flags(arg0, arg1) (arg0)->color_flags[arg1]
2417     static int gtk_rc_style_get_color_flags( GtkRcStyle* arg0, int arg1 ) {
2418         return arg0.color_flags[arg1];
2419     }
2420     //gtk_rc_style_set_bg(arg0, arg1, arg2) if (arg2) (arg0)->bg[arg1] = *arg2
2421     static void gtk_rc_style_set_bg( GtkRcStyle* arg0, int arg1, GdkColor* arg2 ) {
2422         if (arg2) arg0.bg[arg1] = *arg2;
2423     }
2424     //gtk_rc_style_set_bg_pixmap_name(arg0, arg1, arg2) (arg0)->bg_pixmap_name[arg1] = (char *)arg2
2425     static void gtk_rc_style_set_bg_pixmap_name( GtkRcStyle* arg0, int arg1, char* arg2 ) {
2426         arg0.bg_pixmap_name[arg1] = arg2;
2427     }
2428 
2429     //gtk_rc_style_set_color_flags(arg0, arg1, arg2) (arg0)->color_flags[arg1] = arg2
2430     static void gtk_rc_style_set_color_flags( GtkRcStyle* arg0, int arg1, int arg2 ) {
2431         arg0.color_flags[arg1] = arg2;
2432     }
2433 
2434     //gtk_rc_style_set_fg(arg0, arg1, arg2) if (arg2) (arg0)->fg[arg1] = *arg2
2435     static void gtk_rc_style_set_fg( GtkRcStyle* arg0, int arg1, GdkColor* arg2 ) {
2436         if (arg2) arg0.fg[arg1] = *arg2;
2437     }
2438     //gtk_rc_style_set_text(arg0, arg1, arg2) if (arg2) (arg0)->text[arg1] = *arg2
2439     static void gtk_rc_style_set_text( GtkRcStyle* arg0, int arg1, GdkColor* arg2 ) {
2440         if (arg2) arg0.text[arg1] = *arg2;
2441     }
2442 
2443     //gtk_style_get_font_desc(arg0) (arg0)->font_desc
2444     static PangoFontDescription* gtk_style_get_font_desc( GtkStyle* arg0 ) {
2445         return cast( PangoFontDescription* ) arg0.font_desc;
2446     }
2447     //gtk_style_get_base(arg0, arg1, arg2) *arg2 = (arg0)->base[arg1]
2448     static void gtk_style_get_base( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2449         *arg2 = arg0.base[arg1];
2450     }
2451     //gtk_style_get_bg(arg0, arg1, arg2) *arg2 = (arg0)->bg[arg1]
2452     static void gtk_style_get_bg( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2453         *arg2 = arg0.bg[arg1];
2454     }
2455     //gtk_style_get_black(arg0, arg1) *arg1 = (arg0)->black
2456     static void gtk_style_get_black( GtkStyle* arg0, GdkColor* arg1 ) {
2457         *arg1 = arg0.black;
2458     }
2459     //gtk_style_get_dark(arg0, arg1, arg2) *arg2 = (arg0)->dark[arg1]
2460     static void gtk_style_get_dark( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2461         *arg2 = arg0.dark[arg1];
2462     }
2463     //gtk_style_get_fg(arg0, arg1, arg2) *arg2 = (arg0)->fg[arg1]
2464     static void gtk_style_get_fg( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2465         *arg2 = arg0.fg[arg1];
2466     }
2467     //gtk_style_get_light(arg0, arg1, arg2) *arg2 = (arg0)->light[arg1]
2468     static void gtk_style_get_light( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2469         *arg2 = arg0.light[arg1];
2470     }
2471     //gtk_style_get_text(arg0, arg1, arg2) *arg2 = (arg0)->text[arg1]
2472     static void gtk_style_get_text( GtkStyle* arg0, int arg1, GdkColor* arg2 ) {
2473         *arg2 = arg0.text[arg1];
2474     }
2475 
2476     //gtk_style_get_xthickness(arg0) (arg0)->xthickness
2477     static int gtk_style_get_xthickness( GtkStyle* arg0 ) {
2478         return arg0.xthickness;
2479     }
2480     //gtk_style_get_ythickness(arg0) (arg0)->ythickness
2481     static int gtk_style_get_ythickness( GtkStyle* arg0 ) {
2482         return arg0.ythickness;
2483     }
2484     +/
2485     /+
2486     gtk_style_get_fg_gc(arg0, arg1, arg2) *arg2 = (arg0)->fg_gc[arg1]
2487     gtk_style_get_bg_gc(arg0, arg1, arg2) *arg2 = (arg0)->bg_gc[arg1]
2488     gtk_style_get_light_gc(arg0, arg1, arg2) *arg2 = (arg0)->light_gc[arg1]
2489     gtk_style_get_dark_gc(arg0, arg1, arg2) *arg2 = (arg0)->dark_gc[arg1]
2490     gtk_style_get_mid_gc(arg0, arg1, arg2) *arg2 = (arg0)->mid_gc[arg1]
2491     gtk_style_get_text_gc(arg0, arg1, arg2) *arg2 = (arg0)->text_gc[arg1]
2492     gtk_style_get_text_aa_gc(arg0, arg1, arg2) *arg2 = (arg0)->text_aa_gc[arg1]
2493     gtk_style_get_black_gc(arg0, arg1) *arg1 = (arg0)->black_gc
2494     gtk_style_get_white_gc(arg0, arg1) *arg1 = (arg0)->white_gc
2495 
2496     localeconv_decimal_point() localeconv()->decimal_point
2497 +/
2498 
2499    /**************************************************************************
2500 
2501         Utility methods -- conversions of gtk macros
2502 
2503     **************************************************************************/
2504     static gulong g_signal_connect( gpointer arg0, in gchar* arg1, GCallback arg2, gpointer arg3 )
2505     {
2506         lock.lock();
2507         scope(exit) lock.unlock();
2508         return g_signal_connect_data (arg0, arg1, arg2, arg3, null , cast(GConnectFlags) 0) ;
2509     }
2510 
2511     static gulong g_signal_connect_after( gpointer arg0, in gchar* arg1, GCallback arg2, gpointer arg3 )
2512     {
2513         lock.lock();
2514         scope(exit) lock.unlock();
2515         return g_signal_connect_data ( arg0, arg1, arg2, arg3, null, GConnectFlags.G_CONNECT_AFTER );
2516     }
2517 
2518     static GSList* g_slist_next( GSList* arg0 )
2519     {
2520         lock.lock();
2521         scope(exit) lock.unlock();
2522         return arg0 ? arg0.next : null;
2523     }
2524 
2525     static GList* g_list_next( GList* arg0 )
2526     {
2527         lock.lock();
2528         scope(exit) lock.unlock();
2529         return arg0 ? arg0.next : null;
2530     }
2531 
2532     static GList* g_list_previous( GList* arg0 )
2533     {
2534         lock.lock();
2535         scope(exit) lock.unlock();
2536         return arg0 ? arg0.prev : null;
2537     }
2538 
2539     static Display* GDK_DISPLAY()
2540     {
2541         lock.lock();
2542         scope(exit) lock.unlock();
2543         // gdk_display needs to be a reference to the an external X11 global
2544         // representing the current X11 display
2545         return gdk_display;
2546     }
2547 
2548     static GdkWindow* GDK_ROOT_PARENT()
2549     {
2550         lock.lock();
2551         scope(exit) lock.unlock;
2552         return gdk_get_default_root_window();
2553     }
2554 
2555     static GType GDK_TYPE_COLOR()
2556     {
2557         lock.lock();
2558         scope(exit) lock.unlock;
2559         return gdk_color_get_type();
2560     }
2561 
2562     static GType GDK_TYPE_PIXBUF()
2563     {
2564         lock.lock();
2565         scope(exit) lock.unlock;
2566         return gdk_pixbuf_get_type();
2567     }
2568 
2569     static bool GTK_IS_BUTTON( void* arg0 )
2570     {
2571         lock.lock();
2572         scope(exit) lock.unlock();
2573         return  cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_button_get_type() );
2574     }
2575 
2576     static bool GTK_IS_WINDOW( void* arg0 )
2577     {
2578         lock.lock();
2579         scope(exit) lock.unlock();
2580         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_window_get_type());
2581     }
2582 
2583     static bool GTK_IS_CELL_RENDERER_PIXBUF( void* arg0 )
2584     {
2585         lock.lock();
2586         scope(exit) lock.unlock();
2587         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_cell_renderer_pixbuf_get_type());
2588     }
2589 
2590     static bool GTK_IS_CELL_RENDERER_TEXT( void* arg0 )
2591     {
2592         lock.lock();
2593         scope(exit) lock.unlock();
2594         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_cell_renderer_text_get_type());
2595     }
2596 
2597     static bool GTK_IS_CELL_RENDERER_TOGGLE( void* arg0 )
2598     {
2599         lock.lock();
2600         scope(exit) lock.unlock();
2601         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_cell_renderer_toggle_get_type ());
2602     }
2603 
2604     static bool GTK_IS_CONTAINER( void* arg0 )
2605     {
2606         lock.lock();
2607         scope(exit) lock.unlock();
2608         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_container_get_type () );
2609     }
2610 
2611 
2612     static bool GTK_IS_IMAGE_MENU_ITEM( void* arg0 )
2613     {
2614         lock.lock();
2615         scope(exit) lock.unlock();
2616         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_image_menu_item_get_type ());
2617     }
2618 
2619     static bool GTK_IS_MENU_ITEM( void* arg0 )
2620     {
2621         lock.lock();
2622         scope(exit) lock.unlock();
2623         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_menu_item_get_type ());
2624     }
2625 
2626     static bool GTK_IS_PLUG( void* arg0 )
2627     {
2628         lock.lock();
2629         scope(exit) lock.unlock();
2630         return cast(bool)g_type_check_instance_is_a( cast(GTypeInstance*)arg0, gtk_plug_get_type () );
2631     }
2632 
2633     // Should use d char[] instead for next two methods? - JJR
2634     static char* GTK_STOCK_CANCEL()
2635     {
2636         lock.lock();
2637         scope(exit) lock.unlock();
2638         return cast(char*)"gtk-cancel".ptr;
2639     }
2640 
2641     static char* GTK_STOCK_OK()
2642     {
2643         lock.lock();
2644         scope(exit) lock.unlock();
2645         return cast(char*)"gtk-ok".ptr;
2646     }
2647 
2648     static GType GTK_TYPE_CELL_RENDERER_TEXT()
2649     {
2650         lock.lock();
2651         scope(exit) lock.unlock();
2652         return gtk_cell_renderer_text_get_type();
2653     }
2654 
2655     static GType GTK_TYPE_CELL_RENDERER_PIXBUF()
2656     {
2657         lock.lock();
2658         scope(exit) lock.unlock();
2659         return gtk_cell_renderer_pixbuf_get_type();
2660     }
2661 
2662     static GType GTK_TYPE_CELL_RENDERER_TOGGLE ()
2663     {
2664         lock.lock();
2665         scope(exit) lock.unlock();
2666         return gtk_cell_renderer_toggle_get_type();
2667     }
2668 
2669     static GType GTK_TYPE_FIXED()
2670     {
2671         lock.lock();
2672         scope(exit) lock.unlock();
2673         return gtk_fixed_get_type ();
2674     }
2675 
2676     static GType GTK_TYPE_MENU()
2677     {
2678         lock.lock();
2679         scope(exit) lock.unlock();
2680         return gtk_menu_get_type ();
2681     }
2682 
2683     static GType GTK_TYPE_WIDGET()
2684     {
2685         lock.lock();
2686         scope(exit) lock.unlock();
2687         return gtk_widget_get_type ();
2688     }
2689 
2690     static guint GTK_WIDGET_FLAGS( void* arg0 )
2691     {
2692         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2693             guint flags = 0;
2694             if (gtk_widget_is_toplevel(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_TOPLEVEL;
2695             if (!gtk_widget_get_has_window(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_NO_WINDOW;
2696             if (gtk_widget_get_realized(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_REALIZED;
2697             if (gtk_widget_get_mapped(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_MAPPED;
2698             if (gtk_widget_get_visible(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_VISIBLE;
2699             //if (gtk_widget_is_drawable(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_DRAWABLE;
2700             if (gtk_widget_get_sensitive(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_SENSITIVE;
2701             if (auto parent = OS.gtk_widget_get_parent(cast(GtkWidget*)arg0)) {
2702                 if (gtk_widget_get_sensitive(parent)) flags |= GtkWidgetFlags.GTK_PARENT_SENSITIVE;
2703             }
2704             //if (gtk_widget_is_sensitive(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_IS_SENSITIVE;
2705             if (gtk_widget_get_can_focus(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_CAN_FOCUS;
2706             if (gtk_widget_has_focus(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_HAS_FOCUS;
2707             if (gtk_widget_get_can_default(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_CAN_DEFAULT;
2708             if (gtk_widget_get_receives_default(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_RECEIVES_DEFAULT;
2709             if (gtk_widget_has_default(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_HAS_DEFAULT;
2710             if (gtk_widget_has_grab(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_HAS_GRAB;
2711             if (gtk_widget_has_rc_style(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_RC_STYLE;
2712             //GValue gvalue;
2713             //gtk_widget_style_get_property(cast(GtkWidget*)arg0, "composite-child".ptr, &gvalue);
2714             //if (g_value_get_boolean(&gvalue)) flags |= GtkWidgetFlags.GTK_COMPOSITE_CHILD;
2715             if (gtk_widget_get_app_paintable(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_APP_PAINTABLE;
2716             //if (gtk_widget_get_double_buffered(cast(GtkWidget*)arg0)) flags |= GtkWidgetFlags.GTK_DOUBLE_BUFFERED;
2717             return flags;
2718         }
2719         lock.lock();
2720         scope(exit) lock.unlock();
2721         return    (cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*) arg0,  gtk_object_get_type ())).flags ;
2722     }
2723 
2724     static ubyte GTK_WIDGET_STATE( void* arg0 )
2725     {
2726         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2727             return cast(ubyte)gtk_widget_get_state(cast(GtkWidget*)arg0);
2728         }
2729         lock.lock();
2730         scope(exit) lock.unlock();
2731         return (  cast(GtkWidget*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_widget_get_type ())).state;
2732     }
2733 
2734     static bool GTK_WIDGET_HAS_DEFAULT( void* arg0 )
2735     {
2736         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2737             return cast(bool)gtk_widget_has_default(cast(GtkWidget*)arg0);
2738         }
2739         lock.lock();
2740         scope(exit) lock.unlock();
2741         return ( ( ( cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_object_get_type () )).flags & GtkWidgetFlags.GTK_HAS_DEFAULT) != 0) ;
2742     }
2743 
2744     static bool GTK_WIDGET_HAS_FOCUS( void* arg0 )
2745     {
2746         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2747             return cast(bool)gtk_widget_has_focus(cast(GtkWidget*)arg0);
2748         }
2749         lock.lock();
2750         scope(exit) lock.unlock();
2751         return ( ( ( cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_object_get_type () )).flags & GtkWidgetFlags.GTK_HAS_FOCUS) != 0) ;
2752     }
2753 
2754     static bool GTK_WIDGET_IS_SENSITIVE( void* arg0 )
2755     {
2756         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2757             return cast(bool)gtk_widget_is_sensitive(cast(GtkWidget*)arg0);
2758         }
2759         lock.lock();
2760         scope(exit) lock.unlock();
2761         return ( ( ( cast (GtkObject*) g_type_check_instance_cast ( cast(GTypeInstance*)arg0, gtk_object_get_type ()) ).flags & GtkWidgetFlags.GTK_SENSITIVE) != 0)   && ( ( ( cast(GtkObject*) g_type_check_instance_cast ( cast(GTypeInstance*)arg0, gtk_object_get_type ()) ).flags & GtkWidgetFlags.GTK_PARENT_SENSITIVE) != 0);
2762     }
2763 
2764     static bool GTK_WIDGET_MAPPED( void* arg0 )
2765     {
2766         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2767             return cast(bool)gtk_widget_get_mapped(cast(GtkWidget*)arg0);
2768         }
2769         lock.lock();
2770         scope(exit) lock.unlock();
2771         return ( ( ( cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_object_get_type () )).flags & GtkWidgetFlags.GTK_MAPPED) != 0) ;
2772     }
2773 
2774     static bool GTK_WIDGET_SENSITIVE( void* arg0 )
2775     {
2776         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2777             return cast(bool)gtk_widget_get_sensitive(cast(GtkWidget*)arg0);
2778         }
2779         lock.lock();
2780         scope(exit) lock.unlock();
2781         return ( ( ( cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_object_get_type () )).flags & GTK_SENSITIVE) != 0) ;
2782     }
2783 
2784     static void GTK_WIDGET_SET_FLAGS( void* arg0, uint arg1 )
2785     {
2786         if (OS.buildVERSION(2, 22, 0) <= OS.GTK_VERSION) {
2787             switch (arg1) {
2788             case GtkWidgetFlags.GTK_NO_WINDOW: gtk_widget_set_has_window(cast(GtkWidget*)arg0, false); break;
2789             case GtkWidgetFlags.GTK_REALIZED: gtk_widget_set_realized(cast(GtkWidget*)arg0, true); break;
2790             case GtkWidgetFlags.GTK_MAPPED:  gtk_widget_set_mapped(cast(GtkWidget*)arg0, true); break;
2791             case GtkWidgetFlags.GTK_VISIBLE: gtk_widget_set_visible(cast(GtkWidget*)arg0, true); break;
2792             case GtkWidgetFlags.GTK_SENSITIVE: gtk_widget_set_sensitive(cast(GtkWidget*)arg0, true); break;
2793             case GtkWidgetFlags.GTK_CAN_FOCUS: gtk_widget_set_can_focus(cast(GtkWidget*)arg0, true); break;
2794             case GtkWidgetFlags.GTK_HAS_FOCUS: /+ TODO +/ break;
2795             case GtkWidgetFlags.GTK_CAN_DEFAULT: gtk_widget_set_can_default(cast(GtkWidget*)arg0, true); break;
2796             case GtkWidgetFlags.GTK_RECEIVES_DEFAULT: gtk_widget_set_receives_default(cast(GtkWidget*)arg0, true); break;
2797             case GtkWidgetFlags.GTK_APP_PAINTABLE: gtk_widget_set_app_paintable(cast(GtkWidget*)arg0, true); break;
2798             case GtkWidgetFlags.GTK_DOUBLE_BUFFERED: gtk_widget_set_double_buffered(cast(GtkWidget*)arg0, true); break;
2799             default:
2800                 implMissing(__FILE__,__LINE__);
2801             }
2802             return;
2803         }
2804         lock.lock();
2805         scope(exit) lock.unlock();
2806         (cast(GtkObject*) g_type_check_instance_cast ( cast(GTypeInstance*)arg0,  gtk_object_get_type () ) ).flags |= arg1;
2807     }
2808 
2809     static void GTK_WIDGET_UNSET_FLAGS( void* arg0, uint arg1 )
2810     {
2811         if (OS.buildVERSION(2, 22, 0) <= OS.GTK_VERSION) {
2812             switch (arg1) {
2813             case GtkWidgetFlags.GTK_NO_WINDOW: gtk_widget_set_has_window(cast(GtkWidget*)arg0, true); break;
2814             case GtkWidgetFlags.GTK_REALIZED: gtk_widget_set_realized(cast(GtkWidget*)arg0, false); break;
2815             case GtkWidgetFlags.GTK_MAPPED:  gtk_widget_set_mapped(cast(GtkWidget*)arg0, false); break;
2816             case GtkWidgetFlags.GTK_VISIBLE: gtk_widget_set_visible(cast(GtkWidget*)arg0, false); break;
2817             case GtkWidgetFlags.GTK_SENSITIVE: gtk_widget_set_sensitive(cast(GtkWidget*)arg0, false); break;
2818             case GtkWidgetFlags.GTK_CAN_FOCUS: gtk_widget_set_can_focus(cast(GtkWidget*)arg0, false); break;
2819             case GtkWidgetFlags.GTK_HAS_FOCUS: /+ TODO +/ break;
2820             case GtkWidgetFlags.GTK_CAN_DEFAULT: gtk_widget_set_can_default(cast(GtkWidget*)arg0, false); break;
2821             case GtkWidgetFlags.GTK_RECEIVES_DEFAULT: gtk_widget_set_receives_default(cast(GtkWidget*)arg0, false); break;
2822             case GtkWidgetFlags.GTK_APP_PAINTABLE: gtk_widget_set_app_paintable(cast(GtkWidget*)arg0, false); break;
2823             case GtkWidgetFlags.GTK_DOUBLE_BUFFERED: gtk_widget_set_double_buffered(cast(GtkWidget*)arg0, false); break;
2824             default:
2825                 implMissing(__FILE__,__LINE__);
2826             }
2827             return;
2828         }
2829         lock.lock();
2830         scope(exit) lock.unlock();
2831         (cast(GtkObject*) g_type_check_instance_cast ( cast(GTypeInstance*)arg0,  gtk_object_get_type () ) ).flags &= ~arg1;
2832     }
2833 
2834     static bool GTK_WIDGET_VISIBLE( void* arg0 )
2835     {
2836         if (OS.buildVERSION(2, 20, 0) <= OS.GTK_VERSION) {
2837             return cast(bool)gtk_widget_get_visible(cast(GtkWidget*)arg0);
2838         }
2839         lock.lock();
2840         scope(exit) lock.unlock();
2841         return ( ( ( cast(GtkObject*) g_type_check_instance_cast (cast(GTypeInstance*)arg0, gtk_object_get_type () )).flags & GTK_VISIBLE) != 0) ;
2842     }
2843 
2844     static GObjectClass* G_OBJECT_CLASS( void* arg0 )
2845     {
2846         lock.lock();
2847         scope(exit) lock.unlock();
2848         return (cast(GObjectClass*) g_type_check_class_cast ( cast(GTypeClass*)arg0, cast(GType) (20 << 2) ) ) ;
2849     }
2850 
2851     static GObjectClass* G_OBJECT_GET_CLASS( void* arg0 )
2852     {
2853         lock.lock();
2854         scope(exit) lock.unlock();
2855         return (cast(GObjectClass*) (cast(GTypeInstance*)arg0).g_class) ;
2856     }
2857 
2858     static gchar* G_OBJECT_TYPE_NAME( void* arg0 )
2859     {
2860         lock.lock();
2861         scope(exit) lock.unlock();
2862         return g_type_name( (cast(GTypeClass*) (cast(GTypeInstance*)arg0).g_class).g_type ) ;
2863     }
2864 
2865     static GType G_TYPE_BOOLEAN()
2866     {
2867         lock.lock();
2868         scope(exit) lock.unlock();
2869         return  (cast(GType) (5 << 2)) ;
2870     }
2871 
2872     static GType G_TYPE_INT()
2873     {
2874         lock.lock();
2875         scope(exit) lock.unlock();
2876         return (cast(GType) (6 << 2));
2877     }
2878 
2879     static GType G_OBJECT_TYPE( GTypeInstance* arg0 )
2880     {
2881         lock.lock();
2882         scope(exit) lock.unlock();
2883         return (cast(GTypeClass*) arg0.g_class).g_type;
2884     }
2885 
2886     static GType G_TYPE_STRING()
2887     {
2888         lock.lock();
2889         scope(exit) lock.unlock();
2890         return (cast(GType) (16 << 2));
2891     }
2892 
2893 
2894     static gint PANGO_PIXELS( gint arg0 )
2895     {
2896         lock.lock();
2897         scope(exit) lock.unlock();
2898         return ((arg0 + 512) >> 10);
2899     }
2900 
2901     static GType PANGO_TYPE_FONT_DESCRIPTION()
2902     {
2903         lock.lock();
2904         scope(exit) lock.unlock();
2905         return pango_font_description_get_type () ;
2906     }
2907 
2908     /**************************************************************************
2909 
2910         Utility methods -- conversions of SWT macros
2911 
2912     **************************************************************************/
2913 
2914     static gpointer g_list_data( GList* arg0 )
2915     {
2916         lock.lock();
2917         scope(exit) lock.unlock();
2918         return arg0.data;
2919     }
2920 
2921     static gpointer g_slist_data( GSList* arg0 )
2922     {
2923         lock.lock();
2924         scope(exit) lock.unlock();
2925         return arg0.data;
2926     }
2927 
2928     static void g_list_set_next( GList* arg0, GList* arg1 )
2929     {
2930         lock.lock();
2931         scope(exit) lock.unlock();
2932         arg0.next = arg1;
2933     }
2934 
2935     static void g_list_set_previous( GList* arg0, GList* arg1 )
2936     {
2937         lock.lock();
2938         scope(exit) lock.unlock();
2939         arg0.prev = arg1;
2940     }
2941 
2942     static char* gtk_rc_style_get_bg_pixmap_name( GtkRcStyle* arg0, gint arg1 )
2943     {
2944         lock.lock();
2945         scope(exit) lock.unlock();
2946         return arg0.bg_pixmap_name[arg1];
2947     }
2948 
2949     static gint  gtk_rc_style_get_color_flags( GtkRcStyle* arg0, gint arg1)
2950     {
2951         lock.lock();
2952         scope(exit) lock.unlock();
2953         return arg0.color_flags[arg1];
2954     }
2955 
2956     static void gtk_rc_style_set_bg( GtkRcStyle* arg0, gint arg1, GdkColor* arg2)
2957     {
2958         lock.lock();
2959         scope(exit) lock.unlock();
2960         if (arg2 !is null) {
2961             arg0.bg[arg1] = *arg2;
2962         }
2963     }
2964 
2965     static void gtk_rc_style_set_bg_pixmap_name( GtkRcStyle* arg0, gint arg1, char* arg2)
2966     {
2967         lock.lock();
2968         scope(exit) lock.unlock();
2969         arg0.bg_pixmap_name[arg1] = arg2;
2970     }
2971 
2972     static void gtk_rc_style_set_color_flags( GtkRcStyle* arg0, gint arg1, gint arg2)
2973     {
2974         lock.lock();
2975         scope(exit) lock.unlock();
2976         arg0.color_flags[arg1] = arg2;
2977     }
2978 
2979     static void gtk_rc_style_set_fg( GtkRcStyle* arg0, gint arg1, GdkColor* arg2)
2980     {
2981         lock.lock();
2982         scope(exit) lock.unlock();
2983         if (arg2 !is null ) {
2984             arg0.fg[arg1] = *arg2;
2985         }
2986     }
2987 
2988     static void gtk_rc_style_set_text( GtkRcStyle* arg0, gint arg1, GdkColor* arg2)
2989     {
2990         lock.lock();
2991         scope(exit) lock.unlock();
2992         if (arg2 !is null) {
2993             arg0.text[arg1] = *arg2;
2994         }
2995     }
2996 
2997     static void* gtk_style_get_font_desc( GtkStyle* arg0 )
2998     {
2999         lock.lock();
3000         scope(exit) lock.unlock();
3001         return arg0.font_desc;
3002     }
3003 
3004     static void gtk_style_get_base( GtkStyle* arg0, gint arg1, GdkColor* arg2 )
3005     {
3006         lock.lock();
3007         scope(exit) lock.unlock();
3008         *arg2 = arg0.base[arg1];
3009     }
3010 
3011     static void gtk_style_get_bg( GtkStyle* arg0, gint arg1, GdkColor* arg2 )
3012     {
3013         lock.lock();
3014         scope(exit) lock.unlock();
3015         *arg2 = arg0.bg[arg1];
3016     }
3017 
3018     static void gtk_style_get_black( GtkStyle* arg0, GdkColor* arg1 )
3019     {
3020         lock.lock();
3021         scope(exit) lock.unlock();
3022         *arg1 = arg0.black;
3023     }
3024 
3025     static void gtk_style_get_dark( GtkStyle* arg0, gint arg1, GdkColor* arg2 )
3026     {
3027         lock.lock();
3028         scope(exit) lock.unlock();
3029         *arg2 = arg0.dark[arg1];
3030     }
3031 
3032     static void gtk_style_get_fg( GtkStyle* arg0, gint arg1, GdkColor* arg2 )
3033     {
3034         lock.lock();
3035         scope(exit) lock.unlock();
3036         *arg2 = arg0.fg[arg1];
3037     }
3038 
3039     static void gtk_style_get_light( GtkStyle* arg0, gint arg1, GdkColor* arg2)
3040     {
3041         lock.lock();
3042         scope(exit) lock.unlock();
3043         *arg2 = arg0.light[arg1];
3044     }
3045 
3046     static void gtk_style_get_text( GtkStyle* arg0, gint arg1, GdkColor* arg2)
3047     {
3048         lock.lock();
3049         scope(exit) lock.unlock();
3050         *arg2 = arg0.text[arg1];
3051     }
3052 
3053     static gint  gtk_style_get_xthickness( GtkStyle* arg0 )
3054     {
3055         lock.lock();
3056         scope(exit) lock.unlock();
3057         return arg0.xthickness;
3058     }
3059 
3060     static gint gtk_style_get_ythickness( GtkStyle* arg0 )
3061     {
3062         lock.lock();
3063         scope(exit) lock.unlock();
3064         return arg0.ythickness;
3065     }
3066 
3067     static void gtk_style_get_fg_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3068     {
3069         lock.lock();
3070         scope(exit) lock.unlock();
3071         *arg2 = arg0.fg_gc[arg1];
3072     }
3073 
3074     static void gtk_style_get_bg_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3075     {
3076         lock.lock();
3077         scope(exit) lock.unlock();
3078         *arg2 = arg0.bg_gc[arg1];
3079     }
3080 
3081     static void gtk_style_get_light_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3082     {
3083         lock.lock();
3084         scope(exit) lock.unlock();
3085         *arg2 = arg0.light_gc[arg1];
3086     }
3087 
3088     static void gtk_style_get_dark_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3089     {
3090         lock.lock();
3091         scope(exit) lock.unlock();
3092         *arg2 = arg0.dark_gc[arg1];
3093     }
3094 
3095     static void gtk_style_get_mid_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3096     {
3097         lock.lock();
3098         scope(exit) lock.unlock();
3099         *arg2 = arg0.mid_gc[arg1];
3100     }
3101 
3102     static void gtk_style_get_text_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3103     {
3104         lock.lock();
3105         scope(exit) lock.unlock();
3106         *arg2 = arg0.text_gc[arg1];
3107     }
3108 
3109     static void gtk_style_get_text_aa_gc( GtkStyle* arg0, gint arg1, GdkGC** arg2 )
3110     {
3111         lock.lock();
3112         scope(exit) lock.unlock();
3113         *arg2 = arg0.text_aa_gc[arg1];
3114     }
3115 
3116     static void gtk_style_get_black_gc( GtkStyle* arg0, GdkGC** arg1 )
3117     {
3118         lock.lock();
3119         scope(exit) lock.unlock();
3120         *arg1 = arg0.black_gc;
3121     }
3122 
3123     static void gtk_style_get_white_gc( GtkStyle* arg0, GdkGC** arg1 )
3124     {
3125         lock.lock();
3126         scope(exit) lock.unlock();
3127         *arg1 = arg0.white_gc;
3128     }
3129 
3130     static int strlen( char* ptr ){
3131         version(Tango){
3132             return tango.stdc..string.strlen( ptr );
3133         } else { // Phobos
3134             return cast(int)/*64bit*/core.stdc..string.strlen( ptr );
3135         }
3136     }
3137     //localeconv_decimal_point() localeconv()->decimal_point
3138     static void* memmove( void* trg, in void* src, size_t len ){
3139         version(Tango){
3140             return tango.stdc..string.memmove( trg, src, len );
3141         } else { // Phobos
3142             return core.stdc..string.memmove( trg, src, len );
3143         }
3144     }
3145 }
3146 
3147 
3148 
3149 
3150 
3151 
3152 
3153 
3154