Themes

Name

Themes -- 

Synopsis


#include <gtk/gtk.h>


struct      GtkThemeEngine;
GtkThemeEngine* gtk_theme_engine_get        (gchar *name);
void        gtk_theme_engine_ref            (GtkThemeEngine *engine);
void        gtk_theme_engine_unref          (GtkThemeEngine *engine);
void        gtk_themes_init                 (int *argc,
                                             char ***argv);
void        gtk_themes_exit                 (gint error_code);

Description

Details

struct GtkThemeEngine

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);
};


gtk_theme_engine_get ()

GtkThemeEngine* gtk_theme_engine_get        (gchar *name);

name : 
Returns : 


gtk_theme_engine_ref ()

void        gtk_theme_engine_ref            (GtkThemeEngine *engine);

engine : 


gtk_theme_engine_unref ()

void        gtk_theme_engine_unref          (GtkThemeEngine *engine);

engine : 


gtk_themes_init ()

void        gtk_themes_init                 (int *argc,
                                             char ***argv);

argc : 
argv : 


gtk_themes_exit ()

void        gtk_themes_exit                 (gint error_code);

error_code :