Mercurial > dwindows
comparison gtk/dw.c @ 639:06be879f5137
Support for building with GTK+ on Mac OSX
author | mhessling@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sun, 12 Apr 2009 01:12:04 +0000 |
parents | f6f887d2c5aa |
children | 9ab89d89e6b4 |
comparison
equal
deleted
inserted
replaced
638:3ce487327afd | 639:06be879f5137 |
---|---|
1878 return gdk_pixbuf_new_from_xpm_data((const char **)data); | 1878 return gdk_pixbuf_new_from_xpm_data((const char **)data); |
1879 return NULL; | 1879 return NULL; |
1880 } | 1880 } |
1881 #endif | 1881 #endif |
1882 | 1882 |
1883 #if defined(GDK_WINDOWING_X11) | 1883 #ifdef GDK_WINDOWING_X11 |
1884 static void _size_allocate(GtkWindow *window) | 1884 static void _size_allocate(GtkWindow *window) |
1885 { | 1885 { |
1886 XSizeHints sizehints; | 1886 XSizeHints sizehints; |
1887 | 1887 |
1888 sizehints.base_width = 1; | 1888 sizehints.base_width = 1; |
1892 sizehints.min_width = 8; | 1892 sizehints.min_width = 8; |
1893 sizehints.min_height = 8; | 1893 sizehints.min_height = 8; |
1894 | 1894 |
1895 sizehints.flags = (PBaseSize|PMinSize|PResizeInc); | 1895 sizehints.flags = (PBaseSize|PMinSize|PResizeInc); |
1896 | 1896 |
1897 XSetWMNormalHints (GDK_DISPLAY(), | 1897 XSetWMNormalHints (GDK_DISPLAY(),GDK_WINDOW_XWINDOW (GTK_WIDGET (window)->window),&sizehints); |
1898 GDK_WINDOW_XWINDOW (GTK_WIDGET (window)->window), | |
1899 &sizehints); | |
1900 gdk_flush (); | 1898 gdk_flush (); |
1901 } | 1899 } |
1902 #endif | 1900 #endif |
1903 | 1901 |
1904 /* Find the index of a given thread */ | 1902 /* Find the index of a given thread */ |
2434 gtk_mdi_set_state(GTK_MDI(mdi), handle, CHILD_ICONIFIED); | 2432 gtk_mdi_set_state(GTK_MDI(mdi), handle, CHILD_ICONIFIED); |
2435 } | 2433 } |
2436 else | 2434 else |
2437 #endif | 2435 #endif |
2438 { | 2436 { |
2437 #if 0 | |
2439 XIconifyWindow(GDK_WINDOW_XDISPLAY(GTK_WIDGET(handle)->window), | 2438 XIconifyWindow(GDK_WINDOW_XDISPLAY(GTK_WIDGET(handle)->window), |
2440 GDK_WINDOW_XWINDOW(GTK_WIDGET(handle)->window), | 2439 GDK_WINDOW_XWINDOW(GTK_WIDGET(handle)->window), |
2441 DefaultScreen (GDK_DISPLAY ())); | 2440 DefaultScreen (GDK_DISPLAY ())); |
2441 #else | |
2442 gtk_window_iconify( GTK_WINDOW(handle) ); | |
2443 #endif | |
2442 } | 2444 } |
2443 DW_MUTEX_UNLOCK; | 2445 DW_MUTEX_UNLOCK; |
2444 return 0; | 2446 return 0; |
2445 } | 2447 } |
2446 | 2448 |
3543 void dw_pointer_set_pos(long x, long y) | 3545 void dw_pointer_set_pos(long x, long y) |
3544 { | 3546 { |
3545 int _locked_by_me = FALSE; | 3547 int _locked_by_me = FALSE; |
3546 | 3548 |
3547 DW_MUTEX_LOCK; | 3549 DW_MUTEX_LOCK; |
3548 #if GTK_CHECK_VERSION(2,8,0) | 3550 #ifdef GDK_WINDOWING_X11 |
3551 # if GTK_CHECK_VERSION(2,8,0) | |
3549 gdk_display_warp_pointer( gdk_display_get_default(), gdk_screen_get_default(), x, y ); | 3552 gdk_display_warp_pointer( gdk_display_get_default(), gdk_screen_get_default(), x, y ); |
3550 // gdk_display_warp_pointer( GDK_DISPLAY(), gdk_screen_get_default(), x, y ); | 3553 // gdk_display_warp_pointer( GDK_DISPLAY(), gdk_screen_get_default(), x, y ); |
3551 #else | 3554 # else |
3552 # if GDK_WINDOWING_X11 | |
3553 XWarpPointer(GDK_DISPLAY(), None, GDK_ROOT_WINDOW(), 0,0,0,0, x, y); | 3555 XWarpPointer(GDK_DISPLAY(), None, GDK_ROOT_WINDOW(), 0,0,0,0, x, y); |
3554 # endif | 3556 # endif |
3555 #endif | 3557 #endif |
3556 DW_MUTEX_UNLOCK; | 3558 DW_MUTEX_UNLOCK; |
3557 } | 3559 } |
8833 { | 8835 { |
8834 if ( width == 0 ) | 8836 if ( width == 0 ) |
8835 default_width = -1; | 8837 default_width = -1; |
8836 if ( height == 0 ) | 8838 if ( height == 0 ) |
8837 default_height = -1; | 8839 default_height = -1; |
8838 #if defined(GDK_WINDOWING_X11) | 8840 #ifdef GDK_WINDOWING_X11 |
8839 | |
8840 _size_allocate(GTK_WINDOW(handle)); | 8841 _size_allocate(GTK_WINDOW(handle)); |
8841 #endif | 8842 #endif |
8842 if(handle->window) | 8843 if(handle->window) |
8843 gdk_window_resize(handle->window, default_width , default_height ); | 8844 gdk_window_resize(handle->window, default_width , default_height ); |
8844 gtk_window_set_default_size(GTK_WINDOW(handle), default_width , default_height ); | 8845 gtk_window_set_default_size(GTK_WINDOW(handle), default_width , default_height ); |