diff options
author | Hans Breuer <hans@breuer.org> | 2001-08-11 20:27:36 +0000 |
---|---|---|
committer | Hans Breuer <hans@src.gnome.org> | 2001-08-11 20:27:36 +0000 |
commit | 0b5db507da8fff0c9d4fad16c4b4fc569ffb3ec0 (patch) | |
tree | b7c4593df4d6ff4ee476a9944e515698d6fe99ac /gdk | |
parent | 4041a889cd7f8219568ffbf49a611029786680eb (diff) | |
download | gtk+-0b5db507da8fff0c9d4fad16c4b4fc569ffb3ec0.tar.gz |
coalescing property notifies
2001-08-11 Hans Breuer <hans@breuer.org>
* gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c,
gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c,
gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c,
gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
* gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
GDK_TYPE_EVENT signals
* gtk/gtkalignment.c : removed 'direct allocation bug',
which Tim discovered while reading the patch
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/win32/gdkgc-win32.c | 11 | ||||
-rw-r--r-- | gdk/win32/gdkimage-win32.c | 6 | ||||
-rw-r--r-- | gdk/win32/gdkwindow-win32.c | 17 |
3 files changed, 24 insertions, 10 deletions
diff --git a/gdk/win32/gdkgc-win32.c b/gdk/win32/gdkgc-win32.c index e08673da8d..312809a556 100644 --- a/gdk/win32/gdkgc-win32.c +++ b/gdk/win32/gdkgc-win32.c @@ -991,9 +991,9 @@ gdk_win32_hdc_get (GdkDrawable *drawable, if (GDK_IS_DRAWABLE_IMPL_WIN32 (drawable)) impl = GDK_DRAWABLE_IMPL_WIN32(drawable); else if (GDK_IS_WINDOW (drawable)) - impl = ((GdkWindowObject *) drawable)->impl; + impl = GDK_DRAWABLE_IMPL_WIN32 ((GDK_WINDOW_OBJECT (drawable))->impl); else if (GDK_IS_PIXMAP (drawable)) - impl = ((GdkPixmapObject *) drawable)->impl; + impl = GDK_DRAWABLE_IMPL_WIN32 ((GDK_PIXMAP_OBJECT (drawable))->impl); win32_gc->hwnd = impl->handle; @@ -1209,9 +1209,9 @@ gdk_win32_hdc_release (GdkDrawable *drawable, if (GDK_IS_DRAWABLE_IMPL_WIN32 (drawable)) impl = GDK_DRAWABLE_IMPL_WIN32(drawable); else if (GDK_IS_WINDOW (drawable)) - impl = ((GdkWindowObject *) drawable)->impl; + impl = GDK_DRAWABLE_IMPL_WIN32 ((GDK_WINDOW_OBJECT (drawable))->impl); else if (GDK_IS_PIXMAP (drawable)) - impl = ((GdkPixmapObject *) drawable)->impl; + impl = GDK_DRAWABLE_IMPL_WIN32 ((GDK_PIXMAP_OBJECT (drawable))->impl); if (usage & GDK_GC_FOREGROUND) { @@ -1241,7 +1241,8 @@ gdk_win32_hdc_release (GdkDrawable *drawable, } else { - ReleaseDC (win32_gc->hwnd, win32_gc->hdc); + if (!ReleaseDC (win32_gc->hwnd, win32_gc->hdc)) + WIN32_GDI_FAILED ("ReleaseDC"); } if (hpen != NULL) diff --git a/gdk/win32/gdkimage-win32.c b/gdk/win32/gdkimage-win32.c index 86f90ebf78..b204f850d0 100644 --- a/gdk/win32/gdkimage-win32.c +++ b/gdk/win32/gdkimage-win32.c @@ -423,11 +423,13 @@ _gdk_win32_get_image (GdkDrawable *drawable, if (GDK_IS_PIXMAP (drawable)) { SelectObject (hdc, oldbitmap1); - DeleteDC (hdc); + if (!DeleteDC (hdc)) + WIN32_GDI_FAILED ("DeleteDC"); } else { - ReleaseDC (impl->handle, hdc); + if (!ReleaseDC (impl->handle, hdc)) + WIN32_GDI_FAILED ("ReleaseDC"); } g_free (image); return NULL; diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c index 3e2874e4c8..1d6e7deeb4 100644 --- a/gdk/win32/gdkwindow-win32.c +++ b/gdk/win32/gdkwindow-win32.c @@ -530,8 +530,9 @@ gdk_window_new (GdkWindow *parent, dwExStyle = WS_EX_TRANSPARENT; private->depth = 0; private->input_only = TRUE; - draw_impl->colormap = NULL; - GDK_NOTE (MISC, g_print ("...GDK_INPUT_ONLY, NULL colormap\n")); + draw_impl->colormap = gdk_colormap_get_system (); + gdk_colormap_ref (draw_impl->colormap); + GDK_NOTE (MISC, g_print ("...GDK_INPUT_ONLY, system colormap\n")); } if (parent_private) @@ -1505,8 +1506,10 @@ gdk_window_set_transient_for (GdkWindow *window, if (!SetWindowLong (window_id, GWL_STYLE, style)) WIN32_API_FAILED ("SetWindowLong"); +#if 0 /* not sure if we want to do this, clipping to parent size! */ if (!SetParent (window_id, parent_id)) WIN32_API_FAILED ("SetParent"); +#endif if (!RedrawWindow (window_id, NULL, NULL, RDW_FRAME | RDW_INVALIDATE | RDW_UPDATENOW)) @@ -1751,6 +1754,11 @@ gdk_window_get_frame_extents (GdkWindow *window, HWND hwnd; RECT r; + g_return_if_fail (GDK_IS_WINDOW (window)); + g_return_if_fail (rect != NULL); + + private = GDK_WINDOW_OBJECT (window); + rect->x = 0; rect->y = 0; rect->width = 1; @@ -1759,6 +1767,9 @@ gdk_window_get_frame_extents (GdkWindow *window, if (GDK_WINDOW_DESTROYED (window)) return; + while (private->parent && ((GdkWindowObject*) private->parent)->parent) + private = (GdkWindowObject*) private->parent; + hwnd = GDK_WINDOW_HWND (window); /* find the frame window */ while (HWND_DESKTOP != GetParent (hwnd)) @@ -1767,7 +1778,7 @@ gdk_window_get_frame_extents (GdkWindow *window, g_return_if_fail (NULL != hwnd); } - if (GetWindowRect (hwnd, &r)) + if (!GetWindowRect (hwnd, &r)) WIN32_API_FAILED ("GetWindowRect"); rect->x = r.left; |