From 755334829107e24f1a6f003a9cdaf9ba44939b83 Mon Sep 17 00:00:00 2001 From: Mike Kestner Date: Wed, 5 Nov 2003 21:40:52 +0000 Subject: [PATCH] 2003-11-05 Moritz Balz * gdk/Window.custom : System.Drawing.Rectangle/Point customizations svn path=/trunk/gtk-sharp/; revision=19650 --- ChangeLog | 6 +++- gdk/Window.custom | 75 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 gdk/Window.custom diff --git a/ChangeLog b/ChangeLog index 7037c7dcc..d2ab48301 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,8 @@ -2003-11-04 Mike Kestner +2003-11-05 Moritz Balz + + * gdk/Window.custom : System.Drawing.Rectangle/Point customizations + +2003-11-05 Mike Kestner * gtk/TreeNodeAttribute.cs : sealed per Ben Maurer's suggestion. * gtk/TreeNodeValueAttribute.cs : ditto diff --git a/gdk/Window.custom b/gdk/Window.custom new file mode 100644 index 000000000..09bb46f1e --- /dev/null +++ b/gdk/Window.custom @@ -0,0 +1,75 @@ +// Gdk.Window.custom - Gdk Window class customizations +// +// Author: Moritz Balz +// +// (c) 2003 Moritz Balz +// +// This code is inserted after the automatically generated code. + + public System.Drawing.Rectangle FrameExtents { + get { + Gdk.Rectangle rect = Gdk.Rectangle.Zero; + gdk_window_get_frame_extents (Handle, ref rect); + return new System.Drawing.Rectangle (rect.x, rect.y, rect.width, rect.height); + } + } + + public void Move (System.Drawing.Point p) { + gdk_window_move (Handle, p.X, p.Y); + } + + public System.Drawing.Point Origin { + get { + int x, y; + gdk_window_get_origin (Handle, out x, out y); + return new System.Drawing.Point (x, y); + } + } + + public System.Drawing.Point RootOrigin { + get { + int x, y; + gdk_window_get_root_origin (Handle, out x, out y); + return new System.Drawing.Point (x, y); + } + } + + public bool Visible { + get { + return gdk_window_is_visible (Handle); + } + } + + public void ClearArea(System.Drawing.Rectangle rect) { + gdk_window_clear_area (Handle, rect.X, rect.Y, rect.Width, rect.Height); + } + + public void InvalidateRect(System.Drawing.Rectangle rect, bool invalidate_children) { + Gdk.Rectangle grect = new Gdk.Rectangle (rect.X, rect.Y, rect.Width, rect.Height); + gdk_window_invalidate_rect (Handle, ref grect, invalidate_children); + } + + public bool Viewable { + get { + return gdk_window_is_viewable (Handle); + } + } + + public System.Drawing.Point Position { + get { + int x, y; + gdk_window_get_position (Handle, out x, out y); + return new System.Drawing.Point (x, y); + } + } + + public void MoveResize (System.Drawing.Rectangle rect) { + gdk_window_move_resize (Handle, rect.X, rect.Y, rect.Width, rect.Height); + } + + public void ClearArea (System.Drawing.Rectangle rect, bool expose) { + if (expose) + gdk_window_clear_area_e (Handle, rect.X, rect.Y, rect.Width, rect.Height); + else + gdk_window_clear_area (Handle, rect.X, rect.Y, rect.Width, rect.Height); + }