diff options
author | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2016-01-29 14:15:02 +0200 |
---|---|---|
committer | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2016-01-31 03:08:58 +0200 |
commit | 20d710475fadd2312429f93f49f4cf6eede2be15 (patch) | |
tree | a7ea193b6dfef7dcbea9182ca44321cdf9a96145 /libmetacity | |
parent | 01fc4a4c55aa95d41db5797a329d63daf9974168 (diff) | |
download | metacity-20d710475fadd2312429f93f49f4cf6eede2be15.tar.gz |
theme: move draw_op_lists to MetaThemeMetacity
Diffstat (limited to 'libmetacity')
-rw-r--r-- | libmetacity/meta-theme-metacity.c | 23 | ||||
-rw-r--r-- | libmetacity/meta-theme-metacity.h | 51 |
2 files changed, 53 insertions, 21 deletions
diff --git a/libmetacity/meta-theme-metacity.c b/libmetacity/meta-theme-metacity.c index 87140351..c6eebb62 100644 --- a/libmetacity/meta-theme-metacity.c +++ b/libmetacity/meta-theme-metacity.c @@ -20,6 +20,7 @@ #include <glib/gi18n-lib.h> +#include "meta-draw-op.h" #include "meta-theme.h" #include "meta-theme-metacity.h" @@ -30,6 +31,8 @@ struct _MetaThemeMetacity GHashTable *integers; GHashTable *floats; GHashTable *colors; + + GHashTable *draw_op_lists; }; G_DEFINE_TYPE (MetaThemeMetacity, meta_theme_metacity, META_TYPE_THEME_IMPL) @@ -51,6 +54,8 @@ meta_theme_metacity_dispose (GObject *object) g_clear_pointer (&metacity->floats, g_hash_table_destroy); g_clear_pointer (&metacity->colors, g_hash_table_destroy); + g_clear_pointer (&metacity->draw_op_lists, g_hash_table_destroy); + G_OBJECT_CLASS (meta_theme_metacity_parent_class)->dispose (object); } @@ -67,6 +72,8 @@ meta_theme_metacity_class_init (MetaThemeMetacityClass *metacity_class) static void meta_theme_metacity_init (MetaThemeMetacity *metacity) { + metacity->draw_op_lists = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, + (GDestroyNotify) meta_draw_op_list_unref); } gboolean @@ -241,3 +248,19 @@ meta_theme_metacity_lookup_color (MetaThemeMetacity *metacity, return TRUE; } + +MetaDrawOpList * +meta_theme_metacity_lookup_draw_op_list (MetaThemeMetacity *metacity, + const gchar *name) +{ + return g_hash_table_lookup (metacity->draw_op_lists, name); +} + +void +meta_theme_metacity_insert_draw_op_list (MetaThemeMetacity *metacity, + const gchar *name, + MetaDrawOpList *op_list) +{ + meta_draw_op_list_ref (op_list); + g_hash_table_replace (metacity->draw_op_lists, g_strdup (name), op_list); +} diff --git a/libmetacity/meta-theme-metacity.h b/libmetacity/meta-theme-metacity.h index 269acf9c..9e27a8f7 100644 --- a/libmetacity/meta-theme-metacity.h +++ b/libmetacity/meta-theme-metacity.h @@ -23,36 +23,45 @@ G_BEGIN_DECLS +typedef struct _MetaDrawOpList MetaDrawOpList; + #define META_TYPE_THEME_METACITY meta_theme_metacity_get_type () G_DECLARE_FINAL_TYPE (MetaThemeMetacity, meta_theme_metacity, META, THEME_METACITY, MetaThemeImpl) -gboolean meta_theme_metacity_define_int (MetaThemeMetacity *metacity, - const gchar *name, - gint value, - GError **error); +gboolean meta_theme_metacity_define_int (MetaThemeMetacity *metacity, + const gchar *name, + gint value, + GError **error); + +gboolean meta_theme_metacity_lookup_int (MetaThemeMetacity *metacity, + const gchar *name, + gint *value); + +gboolean meta_theme_metacity_define_float (MetaThemeMetacity *metacity, + const gchar *name, + gdouble value, + GError **error); -gboolean meta_theme_metacity_lookup_int (MetaThemeMetacity *metacity, - const gchar *name, - gint *value); +gboolean meta_theme_metacity_lookup_float (MetaThemeMetacity *metacity, + const gchar *name, + gdouble *value); -gboolean meta_theme_metacity_define_float (MetaThemeMetacity *metacity, - const gchar *name, - gdouble value, - GError **error); +gboolean meta_theme_metacity_define_color (MetaThemeMetacity *metacity, + const gchar *name, + const gchar *value, + GError **error); -gboolean meta_theme_metacity_lookup_float (MetaThemeMetacity *metacity, - const gchar *name, - gdouble *value); +gboolean meta_theme_metacity_lookup_color (MetaThemeMetacity *metacity, + const gchar *name, + gchar **value); -gboolean meta_theme_metacity_define_color (MetaThemeMetacity *metacity, - const gchar *name, - const gchar *value, - GError **error); +MetaDrawOpList *meta_theme_metacity_lookup_draw_op_list (MetaThemeMetacity *metacity, + const gchar *name); -gboolean meta_theme_metacity_lookup_color (MetaThemeMetacity *metacity, - const gchar *name, - gchar **value); +void meta_theme_metacity_insert_draw_op_list (MetaThemeMetacity *metacity, + const gchar *name, + MetaDrawOpList *op_list); G_END_DECLS |