comparison dynamin/c/gtk.d @ 18:836a064828e8

Implement FileDialog/DirectoryDialog with GTK and start a glib/gdk/gtk binding. Add invoke/invokeNow stubs to fix build on X.
author Jordan Miner <jminer7@gmail.com>
date Fri, 24 Jul 2009 00:35:42 -0500
parents
children
comparison
equal deleted inserted replaced
17:ef81af74a306 18:836a064828e8
1 module dynamin.c.gtk;
2
3 /*
4 * A binding to at least the part of GTK that Dynamin uses.
5 */
6
7 import dynamin.c.glib;
8 import dynamin.c.gdk;
9 import tango.sys.SharedLib;
10
11 extern(C):
12
13 alias void GtkWidget;
14 alias void GtkWindow;
15
16 //{{{ gtkmain
17 /*const*/ gchar* function(guint required_major,
18 guint required_minor,
19 guint required_micro) gtk_check_version;
20
21 gboolean function(int* argc,
22 char*** argv) gtk_parse_args;
23
24 void function(int* argc,
25 char*** argv) gtk_init;
26
27 gboolean function(int* argc,
28 char*** argv) gtk_init_check;
29
30 // leaving some out
31
32 gboolean function() gtk_events_pending;
33 //void function(GdkEvent* event) gtk_main_do_event;
34 void function() gtk_main;
35 guint function() gtk_main_level;
36 void function() gtk_main_quit;
37 gboolean function() gtk_main_iteration;
38 gboolean function(gboolean blocking) gtk_main_iteration_do;
39 //}}}
40
41 //{{{ gtkwidget
42 void function(GtkWidget* widget) gtk_widget_destroy;
43 //}}}
44
45 //{{{ gtkdialog
46 enum {
47 GTK_DIALOG_MODAL = 1 << 0,
48 GTK_DIALOG_DESTROY_WITH_PARENT = 1 << 1,
49 GTK_DIALOG_NO_SEPARATOR = 1 << 2
50 }
51 alias uint GtkDialogFlags;
52
53 enum {
54 GTK_RESPONSE_NONE = -1,
55
56 GTK_RESPONSE_REJECT = -2,
57 GTK_RESPONSE_ACCEPT = -3,
58
59 GTK_RESPONSE_DELETE_EVENT = -4,
60
61 GTK_RESPONSE_OK = -5,
62 GTK_RESPONSE_CANCEL = -6,
63 GTK_RESPONSE_CLOSE = -7,
64 GTK_RESPONSE_YES = -8,
65 GTK_RESPONSE_NO = -9,
66 GTK_RESPONSE_APPLY = -10,
67 GTK_RESPONSE_HELP = -11
68 }
69 alias uint GtkResponseType;
70
71 alias void GtkDialog;
72
73 GType function() gtk_dialog_get_type;
74 alias gtk_dialog_get_type GTK_TYPE_DIALOG;
75 GtkWidget* function() gtk_dialog_new;
76
77 GtkWidget* function(/*const*/ gchar* title,
78 GtkWindow* parent,
79 GtkDialogFlags flags,
80 /*const*/ gchar* first_button_text,
81 ...) gtk_dialog_new_with_buttons;
82
83 void function(GtkDialog* dialog,
84 GtkWidget* child,
85 gint response_id) gtk_dialog_add_action_widget;
86 GtkWidget* function(GtkDialog* dialog,
87 /*const*/ gchar* button_text,
88 gint response_id) gtk_dialog_add_button;
89 void function(GtkDialog* dialog,
90 /*const*/ gchar* first_button_text,
91 ...) gtk_dialog_add_buttons;
92
93 void function(GtkDialog* dialog,
94 gint response_id,
95 gboolean setting) gtk_dialog_set_response_sensitive;
96 void function(GtkDialog* dialog,
97 gint response_id) gtk_dialog_set_default_response;
98 gint function(GtkDialog* dialog,
99 GtkWidget* widget) gtk_dialog_get_response_for_widget;
100
101 void function(GtkDialog* dialog,
102 gboolean setting) gtk_dialog_set_has_separator;
103 gboolean function(GtkDialog* dialog) gtk_dialog_get_has_separator;
104
105 //gboolean function(GdkScreen* screen) gtk_alternative_dialog_button_order;
106 void function(GtkDialog* dialog,
107 gint first_response_id,
108 ...) gtk_dialog_set_alternative_button_order;
109 void function(GtkDialog* dialog,
110 gint n_params,
111 gint* new_order) gtk_dialog_set_alternative_button_order_from_array;
112
113 void function(GtkDialog* dialog,
114 gint response_id) gtk_dialog_response;
115
116 gint function(GtkDialog* dialog) gtk_dialog_run;
117
118 GtkWidget* function(GtkDialog* dialog) gtk_dialog_get_action_area;
119 GtkWidget* function(GtkDialog* dialog) gtk_dialog_get_content_area;
120 //}}}
121
122 //{{{ gtkfilefilter
123 alias void GtkFileFilter;
124
125 enum {
126 GTK_FILE_FILTER_FILENAME = 1 << 0,
127 GTK_FILE_FILTER_URI = 1 << 1,
128 GTK_FILE_FILTER_DISPLAY_NAME = 1 << 2,
129 GTK_FILE_FILTER_MIME_TYPE = 1 << 3
130 }
131 alias uint GtkFileFilterFlags;
132
133 alias gboolean function(/*const*/ GtkFileFilterInfo* filter_info,
134 gpointer data) GtkFileFilterFunc;
135
136 struct GtkFileFilterInfo {
137 GtkFileFilterFlags contains;
138
139 /*const*/ gchar* filename;
140 /*const*/ gchar* uri;
141 /*const*/ gchar* display_name;
142 /*const*/ gchar* mime_type;
143 }
144
145 GType function() gtk_file_filter_get_type;
146
147 alias gtk_file_filter_get_type GTK_TYPE_FILE_FILTER;
148
149 GtkFileFilter* function() gtk_file_filter_new;
150 void function(GtkFileFilter* filter,
151 /*const*/ gchar* name) gtk_file_filter_set_name;
152 gchar* function(GtkFileFilter* filter) gtk_file_filter_get_name;
153
154 void function(GtkFileFilter* filter,
155 /*const*/ gchar* mime_type) gtk_file_filter_add_mime_type;
156 void function(GtkFileFilter* filter,
157 /*const*/ gchar* pattern) gtk_file_filter_add_pattern;
158 void function(GtkFileFilter* filter) gtk_file_filter_add_pixbuf_formats;
159 void function(GtkFileFilter* filter,
160 GtkFileFilterFlags needed,
161 GtkFileFilterFunc func,
162 gpointer data,
163 GDestroyNotify notify) gtk_file_filter_add_custom;
164
165 GtkFileFilterFlags function(GtkFileFilter* filter) gtk_file_filter_get_needed;
166 gboolean function(GtkFileFilter* filter,
167 /*const*/ GtkFileFilterInfo* filter_info) gtk_file_filter_filter;
168 //}}}
169
170 //{{{ gtkfilechooser
171 alias void GtkFileChooser;
172
173 enum {
174 GTK_FILE_CHOOSER_ACTION_OPEN,
175 GTK_FILE_CHOOSER_ACTION_SAVE,
176 GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
177 GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER
178 }
179 alias uint GtkFileChooserAction;
180
181 enum {
182 GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM,
183 GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME,
184 GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN
185 }
186 alias uint GtkFileChooserConfirmation;
187
188 GType function() gtk_file_chooser_get_type;
189
190 alias gtk_file_chooser_get_type GTK_TYPE_FILE_CHOOSER;
191
192 enum {
193 GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
194 GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
195 GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
196 GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME
197 }
198 alias uint GtkFileChooserError;
199
200 GQuark function() gtk_file_chooser_error_quark;
201
202 alias gtk_file_chooser_error_quark GTK_FILE_CHOOSER_ERROR;
203
204 void function(GtkFileChooser* chooser,
205 GtkFileChooserAction action) gtk_file_chooser_set_action;
206 GtkFileChooserAction function(GtkFileChooser* chooser) gtk_file_chooser_get_action;
207 void function(GtkFileChooser* chooser,
208 gboolean local_only) gtk_file_chooser_set_local_only;
209 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_local_only;
210 void function(GtkFileChooser* chooser,
211 gboolean select_multiple) gtk_file_chooser_set_select_multiple;
212 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_select_multiple;
213 void function(GtkFileChooser* chooser,
214 gboolean show_hidden) gtk_file_chooser_set_show_hidden;
215 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_show_hidden;
216 void function(GtkFileChooser* chooser,
217 gboolean do_overwrite_confirmation) gtk_file_chooser_set_do_overwrite_confirmation;
218 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_do_overwrite_confirmation;
219
220 void function(GtkFileChooser* chooser,
221 /*const*/ gchar* name) gtk_file_chooser_set_current_name;
222
223 gchar* function(GtkFileChooser* chooser) gtk_file_chooser_get_filename;
224 gboolean function(GtkFileChooser* chooser,
225 /*const*/ char* filename) gtk_file_chooser_set_filename;
226 gboolean function(GtkFileChooser* chooser,
227 /*const*/ char* filename) gtk_file_chooser_select_filename;
228 void function(GtkFileChooser* chooser,
229 /*const*/ char* filename) gtk_file_chooser_unselect_filename;
230 void function(GtkFileChooser* chooser) gtk_file_chooser_select_all;
231 void function(GtkFileChooser* chooser) gtk_file_chooser_unselect_all;
232 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_get_filenames;
233 gboolean function(GtkFileChooser* chooser,
234 /*const*/ gchar* filename) gtk_file_chooser_set_current_folder;
235 gchar* function(GtkFileChooser* chooser) gtk_file_chooser_get_current_folder;
236
237 gchar* function(GtkFileChooser* chooser) gtk_file_chooser_get_uri;
238 gboolean function(GtkFileChooser* chooser,
239 /*const*/ char* uri) gtk_file_chooser_set_uri;
240 gboolean function(GtkFileChooser* chooser,
241 /*const*/ char* uri) gtk_file_chooser_select_uri;
242 void function(GtkFileChooser* chooser,
243 /*const*/ char* uri) gtk_file_chooser_unselect_uri;
244 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_get_uris;
245 gboolean function(GtkFileChooser* chooser,
246 /*const*/ gchar* uri) gtk_file_chooser_set_current_folder_uri;
247 gchar* function(GtkFileChooser* chooser) gtk_file_chooser_get_current_folder_uri;
248 /*
249 GFile* function(GtkFileChooser* chooser) gtk_file_chooser_get_file;
250 gboolean function(GtkFileChooser* chooser,
251 GFile* file,
252 GError** error) gtk_file_chooser_set_file;
253 gboolean function(GtkFileChooser* chooser,
254 GFile* file,
255 GError** error) gtk_file_chooser_select_file;
256 void function(GtkFileChooser* chooser,
257 GFile* file) gtk_file_chooser_unselect_file;
258 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_get_files;
259 gboolean function(GtkFileChooser* chooser,
260 GFile* file,
261 GError** error) gtk_file_chooser_set_current_folder_file;
262 GFile* function(GtkFileChooser* chooser) gtk_file_chooser_get_current_folder_file;
263 */
264 /*
265 void function(GtkFileChooser* chooser,
266 GtkWidget* preview_widget) gtk_file_chooser_set_preview_widget;
267 GtkWidget* function(GtkFileChooser* chooser) gtk_file_chooser_get_preview_widget;
268 void function(GtkFileChooser* chooser,
269 gboolean active) gtk_file_chooser_set_preview_widget_active;
270 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_preview_widget_active;
271 void function(GtkFileChooser* chooser,
272 gboolean use_label) gtk_file_chooser_set_use_preview_label;
273 gboolean function(GtkFileChooser* chooser) gtk_file_chooser_get_use_preview_label;
274
275 char* function(GtkFileChooser* chooser) gtk_file_chooser_get_preview_filename;
276 char* function(GtkFileChooser* chooser) gtk_file_chooser_get_preview_uri;
277 GFile* function(GtkFileChooser* chooser) gtk_file_chooser_get_preview_file;
278
279 void function(GtkFileChooser* chooser,
280 GtkWidget* extra_widget) gtk_file_chooser_set_extra_widget;
281 GtkWidget* function(GtkFileChooser* chooser) gtk_file_chooser_get_extra_widget;
282 */
283 void function(GtkFileChooser* chooser,
284 GtkFileFilter* filter) gtk_file_chooser_add_filter;
285 void function(GtkFileChooser* chooser,
286 GtkFileFilter* filter) gtk_file_chooser_remove_filter;
287 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_list_filters;
288
289 void function(GtkFileChooser* chooser,
290 GtkFileFilter* filter) gtk_file_chooser_set_filter;
291 GtkFileFilter* function(GtkFileChooser* chooser) gtk_file_chooser_get_filter;
292
293 gboolean function(GtkFileChooser* chooser,
294 /*const*/ char* folder,
295 GError** error) gtk_file_chooser_add_shortcut_folder;
296 gboolean function(GtkFileChooser* chooser,
297 /*const*/ char* folder,
298 GError** error) gtk_file_chooser_remove_shortcut_folder;
299 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_list_shortcut_folders;
300
301 gboolean function(GtkFileChooser* chooser,
302 /*const*/ char* uri,
303 GError** error) gtk_file_chooser_add_shortcut_folder_uri;
304 gboolean function(GtkFileChooser* chooser,
305 /*const*/ char* uri,
306 GError** error) gtk_file_chooser_remove_shortcut_folder_uri;
307 GSList* function(GtkFileChooser* chooser) gtk_file_chooser_list_shortcut_folder_uris;
308 //}}}
309
310 //{{{ gtkfilechooserdialog
311 alias void GtkFileChooserDialog;
312
313 GType function() gtk_file_chooser_dialog_get_type;
314 alias gtk_file_chooser_dialog_get_type GTK_TYPE_FILE_CHOOSER_DIALOG;
315 GtkWidget* function(/*const*/ gchar* title,
316 GtkWindow* parent,
317 GtkFileChooserAction action,
318 /*const*/ gchar* first_button_text,
319 ...) gtk_file_chooser_dialog_new;
320 //}}}
321
322 //{{{ gtkstock
323 struct GtkStockItem {
324 gchar* stock_id;
325 gchar* label;
326 GdkModifierType modifier;
327 guint keyval;
328 gchar* translation_domain;
329 }
330
331 void function(/*const*/ GtkStockItem* items,
332 guint n_items) gtk_stock_add;
333 void function(/*const*/ GtkStockItem* items,
334 guint n_items) gtk_stock_add_static;
335 gboolean function(/*const*/ gchar* stock_id,
336 GtkStockItem* item) gtk_stock_lookup;
337
338 GSList* function() gtk_stock_list_ids;
339
340 GtkStockItem* function(/*const*/ GtkStockItem* item) gtk_stock_item_copy;
341 void function(GtkStockItem* item) gtk_stock_item_free;
342
343 //void function(/*const*/ gchar* domain,
344 // GtkTranslateFunc func,
345 // gpointer data,
346 // GDestroyNotify notify) gtk_stock_set_translate_func;
347
348 const gchar* GTK_STOCK_DIALOG_AUTHENTICATION = "gtk-dialog-authentication";
349 const gchar* GTK_STOCK_DIALOG_INFO = "gtk-dialog-info";
350 const gchar* GTK_STOCK_DIALOG_WARNING = "gtk-dialog-warning";
351 const gchar* GTK_STOCK_DIALOG_ERROR = "gtk-dialog-error";
352 const gchar* GTK_STOCK_DIALOG_QUESTION = "gtk-dialog-question";
353
354 const gchar* GTK_STOCK_DND = "gtk-dnd";
355 const gchar* GTK_STOCK_DND_MULTIPLE = "gtk-dnd-multiple";
356
357 const gchar* GTK_STOCK_ABOUT = "gtk-about";
358 const gchar* GTK_STOCK_ADD = "gtk-add";
359 const gchar* GTK_STOCK_APPLY = "gtk-apply";
360 const gchar* GTK_STOCK_BOLD = "gtk-bold";
361 const gchar* GTK_STOCK_CANCEL = "gtk-cancel";
362 const gchar* GTK_STOCK_CAPS_LOCK_WARNING = "gtk-caps-lock-warning";
363 const gchar* GTK_STOCK_CDROM = "gtk-cdrom";
364 const gchar* GTK_STOCK_CLEAR = "gtk-clear";
365 const gchar* GTK_STOCK_CLOSE = "gtk-close";
366 const gchar* GTK_STOCK_COLOR_PICKER = "gtk-color-picker";
367 const gchar* GTK_STOCK_CONVERT = "gtk-convert";
368 const gchar* GTK_STOCK_CONNECT = "gtk-connect";
369 const gchar* GTK_STOCK_COPY = "gtk-copy";
370 const gchar* GTK_STOCK_CUT = "gtk-cut";
371 const gchar* GTK_STOCK_DELETE = "gtk-delete";
372 const gchar* GTK_STOCK_DIRECTORY = "gtk-directory";
373 const gchar* GTK_STOCK_DISCARD = "gtk-discard";
374 const gchar* GTK_STOCK_DISCONNECT = "gtk-disconnect";
375 const gchar* GTK_STOCK_EDIT = "gtk-edit";
376 const gchar* GTK_STOCK_EXECUTE = "gtk-execute";
377 const gchar* GTK_STOCK_FILE = "gtk-file";
378 const gchar* GTK_STOCK_FIND = "gtk-find";
379 const gchar* GTK_STOCK_FIND_AND_REPLACE = "gtk-find-and-replace";
380 const gchar* GTK_STOCK_FLOPPY = "gtk-floppy";
381 const gchar* GTK_STOCK_FULLSCREEN = "gtk-fullscreen";
382 const gchar* GTK_STOCK_GOTO_BOTTOM = "gtk-goto-bottom";
383 const gchar* GTK_STOCK_GOTO_FIRST = "gtk-goto-first";
384 const gchar* GTK_STOCK_GOTO_LAST = "gtk-goto-last";
385 const gchar* GTK_STOCK_GOTO_TOP = "gtk-goto-top";
386 const gchar* GTK_STOCK_GO_BACK = "gtk-go-back";
387 const gchar* GTK_STOCK_GO_DOWN = "gtk-go-down";
388 const gchar* GTK_STOCK_GO_FORWARD = "gtk-go-forward";
389 const gchar* GTK_STOCK_GO_UP = "gtk-go-up";
390 const gchar* GTK_STOCK_HARDDISK = "gtk-harddisk";
391 const gchar* GTK_STOCK_HELP = "gtk-help";
392 const gchar* GTK_STOCK_HOME = "gtk-home";
393 const gchar* GTK_STOCK_INDEX = "gtk-index";
394 const gchar* GTK_STOCK_INDENT = "gtk-indent";
395 const gchar* GTK_STOCK_INFO = "gtk-info";
396 const gchar* GTK_STOCK_UNINDENT = "gtk-unindent";
397 const gchar* GTK_STOCK_ITALIC = "gtk-italic";
398 const gchar* GTK_STOCK_JUMP_TO = "gtk-jump-to";
399 const gchar* GTK_STOCK_JUSTIFY_CENTER = "gtk-justify-center";
400 const gchar* GTK_STOCK_JUSTIFY_FILL = "gtk-justify-fill";
401 const gchar* GTK_STOCK_JUSTIFY_LEFT = "gtk-justify-left";
402 const gchar* GTK_STOCK_JUSTIFY_RIGHT = "gtk-justify-right";
403 const gchar* GTK_STOCK_LEAVE_FULLSCREEN = "gtk-leave-fullscreen";
404 const gchar* GTK_STOCK_MISSING_IMAGE = "gtk-missing-image";
405 const gchar* GTK_STOCK_MEDIA_FORWARD = "gtk-media-forward";
406 const gchar* GTK_STOCK_MEDIA_NEXT = "gtk-media-next";
407 const gchar* GTK_STOCK_MEDIA_PAUSE = "gtk-media-pause";
408 const gchar* GTK_STOCK_MEDIA_PLAY = "gtk-media-play";
409 const gchar* GTK_STOCK_MEDIA_PREVIOUS = "gtk-media-previous";
410 const gchar* GTK_STOCK_MEDIA_RECORD = "gtk-media-record";
411 const gchar* GTK_STOCK_MEDIA_REWIND = "gtk-media-rewind";
412 const gchar* GTK_STOCK_MEDIA_STOP = "gtk-media-stop";
413 const gchar* GTK_STOCK_NETWORK = "gtk-network";
414 const gchar* GTK_STOCK_NEW = "gtk-new";
415 const gchar* GTK_STOCK_NO = "gtk-no";
416 const gchar* GTK_STOCK_OK = "gtk-ok";
417 const gchar* GTK_STOCK_OPEN = "gtk-open";
418 const gchar* GTK_STOCK_ORIENTATION_PORTRAIT = "gtk-orientation-portrait";
419 const gchar* GTK_STOCK_ORIENTATION_LANDSCAPE = "gtk-orientation-landscape";
420 const gchar* GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE = "gtk-orientation-reverse-landscape";
421 const gchar* GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT = "gtk-orientation-reverse-portrait";
422 const gchar* GTK_STOCK_PAGE_SETUP = "gtk-page-setup";
423 const gchar* GTK_STOCK_PASTE = "gtk-paste";
424 const gchar* GTK_STOCK_PREFERENCES = "gtk-preferences";
425 const gchar* GTK_STOCK_PRINT = "gtk-print";
426 const gchar* GTK_STOCK_PRINT_ERROR = "gtk-print-error";
427 const gchar* GTK_STOCK_PRINT_PAUSED = "gtk-print-paused";
428 const gchar* GTK_STOCK_PRINT_PREVIEW = "gtk-print-preview";
429 const gchar* GTK_STOCK_PRINT_REPORT = "gtk-print-report";
430 const gchar* GTK_STOCK_PRINT_WARNING = "gtk-print-warning";
431 const gchar* GTK_STOCK_PROPERTIES = "gtk-properties";
432 const gchar* GTK_STOCK_QUIT = "gtk-quit";
433 const gchar* GTK_STOCK_REDO = "gtk-redo";
434 const gchar* GTK_STOCK_REFRESH = "gtk-refresh";
435 const gchar* GTK_STOCK_REMOVE = "gtk-remove";
436 const gchar* GTK_STOCK_REVERT_TO_SAVED = "gtk-revert-to-saved";
437 const gchar* GTK_STOCK_SAVE = "gtk-save";
438 const gchar* GTK_STOCK_SAVE_AS = "gtk-save-as";
439 const gchar* GTK_STOCK_SELECT_ALL = "gtk-select-all";
440 const gchar* GTK_STOCK_SELECT_COLOR = "gtk-select-color";
441 const gchar* GTK_STOCK_SELECT_FONT = "gtk-select-font";
442 const gchar* GTK_STOCK_SORT_ASCENDING = "gtk-sort-ascending";
443 const gchar* GTK_STOCK_SORT_DESCENDING = "gtk-sort-descending";
444 const gchar* GTK_STOCK_SPELL_CHECK = "gtk-spell-check";
445 const gchar* GTK_STOCK_STOP = "gtk-stop";
446 const gchar* GTK_STOCK_STRIKETHROUGH = "gtk-strikethrough";
447 const gchar* GTK_STOCK_UNDELETE = "gtk-undelete";
448 const gchar* GTK_STOCK_UNDERLINE = "gtk-underline";
449 const gchar* GTK_STOCK_UNDO = "gtk-undo";
450 const gchar* GTK_STOCK_YES = "gtk-yes";
451 const gchar* GTK_STOCK_ZOOM_100 = "gtk-zoom-100";
452 const gchar* GTK_STOCK_ZOOM_FIT = "gtk-zoom-fit";
453 const gchar* GTK_STOCK_ZOOM_IN = "gtk-zoom-in";
454 const gchar* GTK_STOCK_ZOOM_OUT = "gtk-zoom-out";
455 //}}}
456
457 static this() {
458 auto lib = SharedLib.load("libgtk-x11-2.0.so.0");
459
460 //{{{ gtkmain
461 gtk_check_version = cast(typeof(gtk_check_version))lib.getSymbol("gtk_check_version");
462 gtk_parse_args = cast(typeof(gtk_parse_args))lib.getSymbol("gtk_parse_args");
463 gtk_init = cast(typeof(gtk_init))lib.getSymbol("gtk_init");
464 gtk_init_check = cast(typeof(gtk_init_check))lib.getSymbol("gtk_init_check");
465
466 gtk_events_pending = cast(typeof(gtk_events_pending))lib.getSymbol("gtk_events_pending");
467 //gtk_main_do_event = cast(typeof(gtk_main_do_event))lib.getSymbol("gtk_main_do_event");
468 gtk_main = cast(typeof(gtk_main))lib.getSymbol("gtk_main");
469 gtk_main_level = cast(typeof(gtk_main_level))lib.getSymbol("gtk_main_level");
470 gtk_main_quit = cast(typeof(gtk_main_quit))lib.getSymbol("gtk_main_quit");
471 gtk_main_iteration = cast(typeof(gtk_main_iteration))lib.getSymbol("gtk_main_iteration");
472 gtk_main_iteration_do = cast(typeof(gtk_main_iteration_do))lib.getSymbol("gtk_main_iteration_do");
473 //}}}
474
475 //{{{ gtkwidget
476 gtk_widget_destroy = cast(typeof(gtk_widget_destroy))lib.getSymbol("gtk_widget_destroy");
477 //}}}
478
479 //{{{ gtkdialog
480 gtk_dialog_get_type = cast(typeof(gtk_dialog_get_type))lib.getSymbol("gtk_dialog_get_type");
481 gtk_dialog_new = cast(typeof(gtk_dialog_new))lib.getSymbol("gtk_dialog_new");
482 gtk_dialog_new_with_buttons = cast(typeof(gtk_dialog_new_with_buttons))lib.getSymbol("gtk_dialog_new_with_buttons");
483 gtk_dialog_add_action_widget = cast(typeof(gtk_dialog_add_action_widget))lib.getSymbol("gtk_dialog_add_action_widget");
484 gtk_dialog_add_button = cast(typeof(gtk_dialog_add_button))lib.getSymbol("gtk_dialog_add_button");
485 gtk_dialog_add_buttons = cast(typeof(gtk_dialog_add_buttons))lib.getSymbol("gtk_dialog_add_buttons");
486 gtk_dialog_set_response_sensitive = cast(typeof(gtk_dialog_set_response_sensitive))lib.getSymbol("gtk_dialog_set_response_sensitive");
487 gtk_dialog_set_default_response = cast(typeof(gtk_dialog_set_default_response))lib.getSymbol("gtk_dialog_set_default_response");
488 gtk_dialog_get_response_for_widget = cast(typeof(gtk_dialog_get_response_for_widget))lib.getSymbol("gtk_dialog_get_response_for_widget");
489 gtk_dialog_set_has_separator = cast(typeof(gtk_dialog_set_has_separator))lib.getSymbol("gtk_dialog_set_has_separator");
490 gtk_dialog_get_has_separator = cast(typeof(gtk_dialog_get_has_separator))lib.getSymbol("gtk_dialog_get_has_separator");
491 //gtk_alternative_dialog_button_order = cast(typeof(gtk_alternative_dialog_button_order))lib.getSymbol("gtk_alternative_dialog_button_order");
492 gtk_dialog_set_alternative_button_order = cast(typeof(gtk_dialog_set_alternative_button_order))lib.getSymbol("gtk_dialog_set_alternative_button_order");
493 gtk_dialog_set_alternative_button_order_from_array = cast(typeof(gtk_dialog_set_alternative_button_order_from_array))lib.getSymbol("gtk_dialog_set_alternative_button_order_from_array");
494 gtk_dialog_response = cast(typeof(gtk_dialog_response))lib.getSymbol("gtk_dialog_response");
495 gtk_dialog_run = cast(typeof(gtk_dialog_run))lib.getSymbol("gtk_dialog_run");
496 //gtk_dialog_get_action_area = cast(typeof(gtk_dialog_get_action_area))lib.getSymbol("gtk_dialog_get_action_area");
497 //gtk_dialog_get_content_area = cast(typeof(gtk_dialog_get_content_area))lib.getSymbol("gtk_dialog_get_content_area");
498 //}}}
499
500 //{{{ gtkfilefilter
501 gtk_file_filter_get_type = cast(typeof(gtk_file_filter_get_type))lib.getSymbol("gtk_file_filter_get_type");
502 gtk_file_filter_new = cast(typeof(gtk_file_filter_new))lib.getSymbol("gtk_file_filter_new");
503 gtk_file_filter_set_name = cast(typeof(gtk_file_filter_set_name))lib.getSymbol("gtk_file_filter_set_name");
504 gtk_file_filter_get_name = cast(typeof(gtk_file_filter_get_name))lib.getSymbol("gtk_file_filter_get_name");
505 gtk_file_filter_add_mime_type = cast(typeof(gtk_file_filter_add_mime_type))lib.getSymbol("gtk_file_filter_add_mime_type");
506 gtk_file_filter_add_pattern = cast(typeof(gtk_file_filter_add_pattern))lib.getSymbol("gtk_file_filter_add_pattern");
507 gtk_file_filter_add_pixbuf_formats = cast(typeof(gtk_file_filter_add_pixbuf_formats))lib.getSymbol("gtk_file_filter_add_pixbuf_formats");
508 gtk_file_filter_add_custom = cast(typeof(gtk_file_filter_add_custom))lib.getSymbol("gtk_file_filter_add_custom");
509 gtk_file_filter_get_needed = cast(typeof(gtk_file_filter_get_needed))lib.getSymbol("gtk_file_filter_get_needed");
510 gtk_file_filter_filter = cast(typeof(gtk_file_filter_filter))lib.getSymbol("gtk_file_filter_filter");
511 //}}}
512
513 //{{{ gtkfilechooser
514 gtk_file_chooser_get_type = cast(typeof(gtk_file_chooser_get_type))lib.getSymbol("gtk_file_chooser_get_type");
515 gtk_file_chooser_error_quark = cast(typeof(gtk_file_chooser_error_quark))lib.getSymbol("gtk_file_chooser_error_quark");
516 gtk_file_chooser_set_action = cast(typeof(gtk_file_chooser_set_action))lib.getSymbol("gtk_file_chooser_set_action");
517 gtk_file_chooser_get_action = cast(typeof(gtk_file_chooser_get_action))lib.getSymbol("gtk_file_chooser_get_action");
518 gtk_file_chooser_set_local_only = cast(typeof(gtk_file_chooser_set_local_only))lib.getSymbol("gtk_file_chooser_set_local_only");
519 gtk_file_chooser_get_local_only = cast(typeof(gtk_file_chooser_get_local_only))lib.getSymbol("gtk_file_chooser_get_local_only");
520 gtk_file_chooser_set_select_multiple = cast(typeof(gtk_file_chooser_set_select_multiple))lib.getSymbol("gtk_file_chooser_set_select_multiple");
521 gtk_file_chooser_get_select_multiple = cast(typeof(gtk_file_chooser_get_select_multiple))lib.getSymbol("gtk_file_chooser_get_select_multiple");
522 gtk_file_chooser_set_show_hidden = cast(typeof(gtk_file_chooser_set_show_hidden))lib.getSymbol("gtk_file_chooser_set_show_hidden");
523 gtk_file_chooser_get_show_hidden = cast(typeof(gtk_file_chooser_get_show_hidden))lib.getSymbol("gtk_file_chooser_get_show_hidden");
524 gtk_file_chooser_set_do_overwrite_confirmation = cast(typeof(gtk_file_chooser_set_do_overwrite_confirmation))lib.getSymbol("gtk_file_chooser_set_do_overwrite_confirmation");
525 gtk_file_chooser_get_do_overwrite_confirmation = cast(typeof(gtk_file_chooser_get_do_overwrite_confirmation))lib.getSymbol("gtk_file_chooser_get_do_overwrite_confirmation");
526 gtk_file_chooser_set_current_name = cast(typeof(gtk_file_chooser_set_current_name))lib.getSymbol("gtk_file_chooser_set_current_name");
527 gtk_file_chooser_get_filename = cast(typeof(gtk_file_chooser_get_filename))lib.getSymbol("gtk_file_chooser_get_filename");
528 gtk_file_chooser_set_filename = cast(typeof(gtk_file_chooser_set_filename))lib.getSymbol("gtk_file_chooser_set_filename");
529 gtk_file_chooser_select_filename = cast(typeof(gtk_file_chooser_select_filename))lib.getSymbol("gtk_file_chooser_select_filename");
530 gtk_file_chooser_unselect_filename = cast(typeof(gtk_file_chooser_unselect_filename))lib.getSymbol("gtk_file_chooser_unselect_filename");
531 gtk_file_chooser_select_all = cast(typeof(gtk_file_chooser_select_all))lib.getSymbol("gtk_file_chooser_select_all");
532 gtk_file_chooser_unselect_all = cast(typeof(gtk_file_chooser_unselect_all))lib.getSymbol("gtk_file_chooser_unselect_all");
533 gtk_file_chooser_get_filenames = cast(typeof(gtk_file_chooser_get_filenames))lib.getSymbol("gtk_file_chooser_get_filenames");
534 gtk_file_chooser_set_current_folder = cast(typeof(gtk_file_chooser_set_current_folder))lib.getSymbol("gtk_file_chooser_set_current_folder");
535 gtk_file_chooser_get_current_folder = cast(typeof(gtk_file_chooser_get_current_folder))lib.getSymbol("gtk_file_chooser_get_current_folder");
536 gtk_file_chooser_get_uri = cast(typeof(gtk_file_chooser_get_uri))lib.getSymbol("gtk_file_chooser_get_uri");
537 gtk_file_chooser_set_uri = cast(typeof(gtk_file_chooser_set_uri))lib.getSymbol("gtk_file_chooser_set_uri");
538 gtk_file_chooser_select_uri = cast(typeof(gtk_file_chooser_select_uri))lib.getSymbol("gtk_file_chooser_select_uri");
539 gtk_file_chooser_unselect_uri = cast(typeof(gtk_file_chooser_unselect_uri))lib.getSymbol("gtk_file_chooser_unselect_uri");
540 gtk_file_chooser_get_uris = cast(typeof(gtk_file_chooser_get_uris))lib.getSymbol("gtk_file_chooser_get_uris");
541 gtk_file_chooser_set_current_folder_uri = cast(typeof(gtk_file_chooser_set_current_folder_uri))lib.getSymbol("gtk_file_chooser_set_current_folder_uri");
542 gtk_file_chooser_get_current_folder_uri = cast(typeof(gtk_file_chooser_get_current_folder_uri))lib.getSymbol("gtk_file_chooser_get_current_folder_uri");
543 /*
544 gtk_file_chooser_get_file = cast(typeof(gtk_file_chooser_get_file))lib.getSymbol("gtk_file_chooser_get_file");
545 gtk_file_chooser_set_file = cast(typeof(gtk_file_chooser_set_file))lib.getSymbol("gtk_file_chooser_set_file");
546 gtk_file_chooser_select_file = cast(typeof(gtk_file_chooser_select_file))lib.getSymbol("gtk_file_chooser_select_file");
547 gtk_file_chooser_unselect_file = cast(typeof(gtk_file_chooser_unselect_file))lib.getSymbol("gtk_file_chooser_unselect_file");
548 gtk_file_chooser_get_files = cast(typeof(gtk_file_chooser_get_files))lib.getSymbol("gtk_file_chooser_get_files");
549 gtk_file_chooser_set_current_folder_file = cast(typeof(gtk_file_chooser_set_current_folder_file))lib.getSymbol("gtk_file_chooser_set_current_folder_file");
550 gtk_file_chooser_get_current_folder_file = cast(typeof(gtk_file_chooser_get_current_folder_file))lib.getSymbol("gtk_file_chooser_get_current_folder_file");
551 gtk_file_chooser_set_preview_widget = cast(typeof(gtk_file_chooser_set_preview_widget))lib.getSymbol("gtk_file_chooser_set_preview_widget");
552 gtk_file_chooser_get_preview_widget = cast(typeof(gtk_file_chooser_get_preview_widget))lib.getSymbol("gtk_file_chooser_get_preview_widget");
553 gtk_file_chooser_set_preview_widget_active = cast(typeof(gtk_file_chooser_set_preview_widget_active))lib.getSymbol("gtk_file_chooser_set_preview_widget_active");
554 gtk_file_chooser_get_preview_widget_active = cast(typeof(gtk_file_chooser_get_preview_widget_active))lib.getSymbol("gtk_file_chooser_get_preview_widget_active");
555 gtk_file_chooser_set_use_preview_label = cast(typeof(gtk_file_chooser_set_use_preview_label))lib.getSymbol("gtk_file_chooser_set_use_preview_label");
556 gtk_file_chooser_get_use_preview_label = cast(typeof(gtk_file_chooser_get_use_preview_label))lib.getSymbol("gtk_file_chooser_get_use_preview_label");
557 gtk_file_chooser_get_preview_filename = cast(typeof(gtk_file_chooser_get_preview_filename))lib.getSymbol("gtk_file_chooser_get_preview_filename");
558 gtk_file_chooser_get_preview_uri = cast(typeof(gtk_file_chooser_get_preview_uri))lib.getSymbol("gtk_file_chooser_get_preview_uri");
559 gtk_file_chooser_get_preview_file = cast(typeof(gtk_file_chooser_get_preview_file))lib.getSymbol("gtk_file_chooser_get_preview_file");
560 gtk_file_chooser_set_extra_widget = cast(typeof(gtk_file_chooser_set_extra_widget))lib.getSymbol("gtk_file_chooser_set_extra_widget");
561 gtk_file_chooser_get_extra_widget = cast(typeof(gtk_file_chooser_get_extra_widget))lib.getSymbol("gtk_file_chooser_get_extra_widget");
562 */
563 gtk_file_chooser_add_filter = cast(typeof(gtk_file_chooser_add_filter))lib.getSymbol("gtk_file_chooser_add_filter");
564 gtk_file_chooser_remove_filter = cast(typeof(gtk_file_chooser_remove_filter))lib.getSymbol("gtk_file_chooser_remove_filter");
565 gtk_file_chooser_list_filters = cast(typeof(gtk_file_chooser_list_filters))lib.getSymbol("gtk_file_chooser_list_filters");
566 gtk_file_chooser_set_filter = cast(typeof(gtk_file_chooser_set_filter))lib.getSymbol("gtk_file_chooser_set_filter");
567 gtk_file_chooser_get_filter = cast(typeof(gtk_file_chooser_get_filter))lib.getSymbol("gtk_file_chooser_get_filter");
568 gtk_file_chooser_add_shortcut_folder = cast(typeof(gtk_file_chooser_add_shortcut_folder))lib.getSymbol("gtk_file_chooser_add_shortcut_folder");
569 gtk_file_chooser_remove_shortcut_folder = cast(typeof(gtk_file_chooser_remove_shortcut_folder))lib.getSymbol("gtk_file_chooser_remove_shortcut_folder");
570 gtk_file_chooser_list_shortcut_folders = cast(typeof(gtk_file_chooser_list_shortcut_folders))lib.getSymbol("gtk_file_chooser_list_shortcut_folders");
571 gtk_file_chooser_add_shortcut_folder_uri = cast(typeof(gtk_file_chooser_add_shortcut_folder_uri))lib.getSymbol("gtk_file_chooser_add_shortcut_folder_uri");
572 gtk_file_chooser_remove_shortcut_folder_uri = cast(typeof(gtk_file_chooser_remove_shortcut_folder_uri))lib.getSymbol("gtk_file_chooser_remove_shortcut_folder_uri");
573 gtk_file_chooser_list_shortcut_folder_uris = cast(typeof(gtk_file_chooser_list_shortcut_folder_uris))lib.getSymbol("gtk_file_chooser_list_shortcut_folder_uris");
574 //}}}
575
576 //{{{ gtkfilechooserdialog
577 gtk_file_chooser_dialog_get_type = cast(typeof(gtk_file_chooser_dialog_get_type))lib.getSymbol("gtk_file_chooser_dialog_get_type");
578 gtk_file_chooser_dialog_new = cast(typeof(gtk_file_chooser_dialog_new))lib.getSymbol("gtk_file_chooser_dialog_new");
579 //}}}
580
581 //{{{ gtkstock
582 gtk_stock_add = cast(typeof(gtk_stock_add))lib.getSymbol("gtk_stock_add");
583 gtk_stock_add_static = cast(typeof(gtk_stock_add_static))lib.getSymbol("gtk_stock_add_static");
584 gtk_stock_lookup = cast(typeof(gtk_stock_lookup))lib.getSymbol("gtk_stock_lookup");
585 gtk_stock_list_ids = cast(typeof(gtk_stock_list_ids))lib.getSymbol("gtk_stock_list_ids");
586 gtk_stock_item_copy = cast(typeof(gtk_stock_item_copy))lib.getSymbol("gtk_stock_item_copy");
587 gtk_stock_item_free = cast(typeof(gtk_stock_item_free))lib.getSymbol("gtk_stock_item_free");
588 //gtk_stock_set_translate_func = cast(typeof(gtk_stock_set_translate_func))lib.getSymbol("gtk_stock_set_translate_func");
589 //}}}
590
591 gtk_init(null, null);
592 }