summaryrefslogtreecommitdiff
path: root/gdk/gdkgc.h
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>1999-11-08 20:14:59 +0000
committerOwen Taylor <otaylor@src.gnome.org>1999-11-08 20:14:59 +0000
commite9b6bfcc01c0d76c2e5392a0d332bd0d00544ae7 (patch)
treef2f741cf95b0b49eabf3a756a404413724c5d248 /gdk/gdkgc.h
parentcd02981bf22833edfca5c5af03278f5701246411 (diff)
downloadgdk-pixbuf-e9b6bfcc01c0d76c2e5392a0d332bd0d00544ae7.tar.gz
Move all X specific code into the x11/ directory. Aside from shuffling
Mon Nov 8 14:47:04 1999 Owen Taylor <otaylor@redhat.com> Move all X specific code into the x11/ directory. Aside from shuffling things around, did the following: * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add gdk_arg_context_* - a simple argument parsing system in the style of popt. * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkprivate-x11.h: Remove X specific stuff from GdkDrawable and GdkWindowPrivate - add ->klass and ->klass_data fields. The klass_data field points to an auxilliary structure that is windowing system dependent. * gdk/gdkfont.c: Make most of the measurement functions simply wrappers around gdk_text_extents(). * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a _gdk_font_strlen() function that hides the weird behavior in gtk+-1.[02] where a string is interpreted differently for 8-bit and 16-bit fonts. * gdk/gdkevents.c: Add a new function gdk_event_button_generate() to store common code for synthesizing double/triple press events. * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h. Make all the function that modify an existing GC simply wrappers around gdk_gc_set_values(). * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation for throwing out later. * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate, GdkImagePrivate and GdkColormapPrivate to have a windowing system dependent part (GdkFontPrivateX etc.) that "derives" from the system-independent part. * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c: Got rid of the included-source-files for XInput in favor of automake conditionals. (Which didn't exist when XInput support was originally added.) * gdk/gdkrgb.c: Remove the visual id from the debugging statements since that is X11 specific; print out type/depth info instead.
Diffstat (limited to 'gdk/gdkgc.h')
-rw-r--r--gdk/gdkgc.h29
1 files changed, 24 insertions, 5 deletions
diff --git a/gdk/gdkgc.h b/gdk/gdkgc.h
index 907b7f674..0fe9deb2f 100644
--- a/gdk/gdkgc.h
+++ b/gdk/gdkgc.h
@@ -9,6 +9,7 @@ extern "C" {
#endif /* __cplusplus */
typedef struct _GdkGCValues GdkGCValues;
+typedef struct _GdkGCClass GdkGCClass;
/* GC cap styles
* CapNotLast:
@@ -154,13 +155,31 @@ struct _GdkGC
gint dummy_var;
};
-GdkGC* gdk_gc_new (GdkWindow *window);
-GdkGC* gdk_gc_new_with_values (GdkWindow *window,
+struct _GdkGCClass
+{
+ void (*destroy) (GdkGC *gc);
+ void (*get_values) (GdkGC *gc,
+ GdkGCValues *values);
+ void (*set_values) (GdkGC *gc,
+ GdkGCValues *values,
+ GdkGCValuesMask mask);
+ void (*set_dashes) (GdkGC *gc,
+ gint dash_offset,
+ gchar dash_list[],
+ gint n);
+};
+
+
+GdkGC *gdk_gc_new (GdkDrawable *drawable);
+GdkGC *gdk_gc_alloc (void);
+
+GdkGC *gdk_gc_new_with_values (GdkDrawable *drawable,
GdkGCValues *values,
GdkGCValuesMask values_mask);
-GdkGC* gdk_gc_ref (GdkGC *gc);
+void gdk_gc_init (GdkGC *gc,
+ GdkGCClass *klass);
+GdkGC *gdk_gc_ref (GdkGC *gc);
void gdk_gc_unref (GdkGC *gc);
-void gdk_gc_destroy (GdkGC *gc);
void gdk_gc_get_values (GdkGC *gc,
GdkGCValues *values);
void gdk_gc_set_foreground (GdkGC *gc,
@@ -192,7 +211,7 @@ void gdk_gc_set_clip_region (GdkGC *gc,
void gdk_gc_set_subwindow (GdkGC *gc,
GdkSubwindowMode mode);
void gdk_gc_set_exposures (GdkGC *gc,
- gint exposures);
+ gboolean exposures);
void gdk_gc_set_line_attributes (GdkGC *gc,
gint line_width,
GdkLineStyle line_style,