diff options
author | Owen Taylor <otaylor@redhat.com> | 2000-07-17 23:18:29 +0000 |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 2000-07-17 23:18:29 +0000 |
commit | b8dcd76c998315201651d7caf6452c10d1b6f9b4 (patch) | |
tree | 7b218deb9d49c935e1513291b60bd62aeb3c4f61 /gtk/gtkthemes.h | |
parent | 2465ad85f9d97f15841b7d22a87fe08afc19a815 (diff) | |
download | gtk+-b8dcd76c998315201651d7caf6452c10d1b6f9b4.tar.gz |
Restore code to paint the background of the text area which was
Mon Jul 17 18:52:38 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
paint the background of the text area which was accidentally
removed at some point.
* gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:
- Move most of the functionality from the theme vtable
into GtkRcStyleClass and GtkStyleClass. The moved
vtable functions were changed a bit in the move to
work better in their new home.
- Get rid of the engine and engine_data fields from
GtkRcStyle and GtkStyle; instead the theme
engine derives theme-specific subclasses of GtkRcStyle
and GtkStyle
- Add extra dlsym() found entry point to themes,
theme_create_rc_style().
* gtk/gtkstyle.c: Copy xthickness, ythickness fields
in gtk_style_real_copy.
* gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
to register a type associated with an engine. (The engine
won't be unloaded as there is an instance of the type.)
Diffstat (limited to 'gtk/gtkthemes.h')
-rw-r--r-- | gtk/gtkthemes.h | 59 |
1 files changed, 9 insertions, 50 deletions
diff --git a/gtk/gtkthemes.h b/gtk/gtkthemes.h index a9903606b7..66111afc63 100644 --- a/gtk/gtkthemes.h +++ b/gtk/gtkthemes.h @@ -37,56 +37,15 @@ extern "C" { #endif /* __cplusplus */ - -struct _GtkThemeEngine { - /* Fill in engine_data pointer in a GtkRcStyle by parsing contents - * of brackets. Returns G_TOKEN_NONE if succesfull, otherwise returns - * the token it expected but didn't get. - */ - guint (*parse_rc_style) (GScanner *scanner, GtkRcStyle *rc_style); - - /* Combine RC style data from src into dest. If - * dest->engine_data is NULL, it should be initialized to default - * values. - */ - void (*merge_rc_style) (GtkRcStyle *dest, GtkRcStyle *src); - - /* Fill in style->engine_data from rc_style->engine_data */ - void (*rc_style_to_style) (GtkStyle *style, GtkRcStyle *rc_style); - - /* Duplicate engine_data from src to dest. The engine_data will - * not subsequently be modified except by a call to realize_style() - * so if realize_style() does nothing, refcounting is appropriate. - */ - void (*duplicate_style) (GtkStyle *dest, GtkStyle *src); - - /* If style needs to initialize for a particular colormap/depth - * combination, do it here. style->colormap/style->depth will have - * been set at this point, and style itself initialized for - * the colormap - */ - void (*realize_style) (GtkStyle *new_style); - - /* If style needs to clean up for a particular colormap/depth - * combination, do it here. - */ - void (*unrealize_style) (GtkStyle *new_style); - - /* Clean up rc_style->engine_data before rc_style is destroyed */ - void (*destroy_rc_style) (GtkRcStyle *rc_style); - - /* Clean up style->engine_data before style is destroyed */ - void (*destroy_style) (GtkStyle *style); - - void (*set_background) (GtkStyle *style, - GdkWindow *window, - GtkStateType state_type); -}; - -GtkThemeEngine *gtk_theme_engine_get (const gchar *name); -void gtk_theme_engine_ref (GtkThemeEngine *engine); -void gtk_theme_engine_unref (GtkThemeEngine *engine); - +GtkThemeEngine * gtk_theme_engine_get (const gchar *name); +void gtk_theme_engine_ref (GtkThemeEngine *engine); +void gtk_theme_engine_unref (GtkThemeEngine *engine); +GtkRcStyle * gtk_theme_engine_create_rc_style (GtkThemeEngine *engine); + +GType gtk_theme_engine_register_type (GtkThemeEngine *engine, + GType parent_type, + const gchar *type_name, + const GTypeInfo *type_info); #ifdef __cplusplus |