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 );