1 #ifndef __GDK_DRAWABLE_H__
2 #define __GDK_DRAWABLE_H__
4 #include <gdk/gdktypes.h>
9 #endif /* __cplusplus */
11 typedef struct _GdkDrawableClass GdkDrawableClass;
14 * Root: There is only 1 root window and it is initialized
15 * at startup. Creating a window of type GDK_WINDOW_ROOT
17 * Toplevel: Windows which interact with the window manager.
18 * Child: Windows which are children of some other type of window.
19 * (Any other type of window). Most windows are child windows.
20 * Dialog: A special kind of toplevel window which interacts with
21 * the window manager slightly differently than a regular
22 * toplevel window. Dialog windows should be used for any
24 * Pixmap: Pixmaps are really just another kind of window which
25 * doesn't actually appear on the screen. It can't have
26 * children, either and is really just a convenience so
27 * that the drawing functions can work on both windows
28 * and pixmaps transparently. (ie. You shouldn't pass a
29 * pixmap to any procedure which accepts a window with the
30 * exception of the drawing functions).
31 * Foreign: A window that actually belongs to another application
49 struct _GdkDrawableClass
51 void (*destroy) (GdkDrawable *drawable);
52 GdkGC *(*create_gc) (GdkDrawable *drawable,
54 GdkGCValuesMask mask);
55 void (*draw_rectangle) (GdkDrawable *drawable,
62 void (*draw_arc) (GdkDrawable *drawable,
71 void (*draw_polygon) (GdkDrawable *drawable,
76 void (*draw_text) (GdkDrawable *drawable,
83 void (*draw_text_wc) (GdkDrawable *drawable,
90 void (*draw_drawable) (GdkDrawable *drawable,
99 void (*draw_points) (GdkDrawable *drawable,
103 void (*draw_segments) (GdkDrawable *drawable,
107 void (*draw_lines) (GdkDrawable *drawable,
113 /* Manipulation of drawables
115 GdkDrawable * gdk_drawable_alloc (void);
117 GdkDrawableType gdk_drawable_get_type (GdkDrawable *window);
119 void gdk_drawable_set_data (GdkDrawable *drawable,
122 GDestroyNotify destroy_func);
123 gpointer gdk_drawable_get_data (GdkDrawable *drawable,
126 void gdk_drawable_get_size (GdkWindow *drawable,
129 void gdk_drawable_set_colormap (GdkDrawable *drawable,
130 GdkColormap *colormap);
131 GdkColormap* gdk_drawable_get_colormap (GdkDrawable *drawable);
132 GdkVisual* gdk_drawable_get_visual (GdkDrawable *drawable);
133 gint gdk_drawable_get_depth (GdkDrawable *drawable);
134 GdkDrawable* gdk_drawable_ref (GdkDrawable *drawable);
135 void gdk_drawable_unref (GdkDrawable *drawable);
139 void gdk_draw_point (GdkDrawable *drawable,
143 void gdk_draw_line (GdkDrawable *drawable,
149 void gdk_draw_rectangle (GdkDrawable *drawable,
156 void gdk_draw_arc (GdkDrawable *drawable,
165 void gdk_draw_polygon (GdkDrawable *drawable,
170 void gdk_draw_string (GdkDrawable *drawable,
175 const gchar *string);
176 void gdk_draw_text (GdkDrawable *drawable,
183 void gdk_draw_text_wc (GdkDrawable *drawable,
188 const GdkWChar *text,
190 void gdk_draw_drawable (GdkDrawable *drawable,
199 void gdk_draw_image (GdkDrawable *drawable,
208 void gdk_draw_points (GdkDrawable *drawable,
212 void gdk_draw_segments (GdkDrawable *drawable,
216 void gdk_draw_lines (GdkDrawable *drawable,
223 #endif /* __cplusplus */
225 #endif /* __GDK_DRAWABLE_H__ */