feedback-theme: Allow to set name

This commit is contained in:
Guido Günther
2022-12-08 10:05:47 +01:00
parent 1d21bfa0dc
commit 82a8b91096
+16 -3
View File
@@ -123,8 +123,7 @@ fbd_feedback_theme_set_property (GObject *object,
switch (property_id) {
case PROP_NAME:
g_free (self->name);
self->name = g_value_dup_string (value);
fbd_feedback_theme_set_name (self, g_value_get_string (value));
break;
case PROP_PROFILES:
if (self->profiles)
@@ -203,7 +202,7 @@ fbd_feedback_theme_class_init (FbdFeedbackThemeClass *klass)
"Name",
"The theme name",
NULL,
G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
G_PARAM_EXPLICIT_NOTIFY | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
props[PROP_PROFILES] =
g_param_spec_boxed (
@@ -257,6 +256,20 @@ fbd_feedback_theme_new_from_file (const gchar *filename, GError **error)
return fbd_feedback_theme_new_from_data (data, error);
}
void
fbd_feedback_theme_set_name (FbdFeedbackTheme *self, const char *name)
{
g_return_if_fail (FBD_IS_FEEDBACK_THEME (self));
if (g_strcmp0 (self->name, name) == 0)
return;
g_free (self->name);
self->name = g_strdup (name);
g_object_notify_by_pspec (G_OBJECT (self), props[PROP_NAME]);
}
const char *
fbd_feedback_theme_get_name (FbdFeedbackTheme *self)
{