summaryrefslogtreecommitdiff
path: root/gladeui
diff options
context:
space:
mode:
authorJuan Pablo Ugarte <juanpablougarte@gmail.com>2020-09-25 16:41:01 -0300
committerJuan Pablo Ugarte <juanpablougarte@gmail.com>2020-09-25 16:41:01 -0300
commiteec1ef3e718c6d1f5ad2d50aa9b69812d27172fc (patch)
tree7d971fa89ab71a7bbe2d30bbe18b6c911c7ac84e /gladeui
parentc84932343f5e7ea20a0d11b42ca2543b703b4919 (diff)
downloadglade-eec1ef3e718c6d1f5ad2d50aa9b69812d27172fc.tar.gz
GladeProjectProperties: fix target version loading
Make sure target version combo gets updated on project load. Fix issue #480 "version field not always updated in XML"
Diffstat (limited to 'gladeui')
-rw-r--r--gladeui/glade-project-properties.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/gladeui/glade-project-properties.c b/gladeui/glade-project-properties.c
index 40e18731..4c0cb7b0 100644
--- a/gladeui/glade-project-properties.c
+++ b/gladeui/glade-project-properties.c
@@ -129,7 +129,7 @@ typedef struct
GtkWidget *css_filechooser;
GtkWidget *css_checkbutton;
- GHashTable *target_radios;
+ GHashTable *target_combos;
/* License */
GtkComboBox *license_comboboxtext;
@@ -169,7 +169,7 @@ glade_project_properties_init (GladeProjectProperties *properties)
{
GladeProjectPropertiesPrivate *priv = GLADE_PROJECT_PROPERTIES_PRIVATE(properties);
- priv->target_radios = g_hash_table_new_full (g_str_hash, g_str_equal,
+ priv->target_combos = g_hash_table_new_full (g_str_hash, g_str_equal,
g_free, NULL);
gtk_widget_init_template (GTK_WIDGET (properties));
@@ -262,7 +262,7 @@ glade_project_properties_finalize (GObject *object)
GladeProjectProperties *properties = GLADE_PROJECT_PROPERTIES (object);
GladeProjectPropertiesPrivate *priv = GLADE_PROJECT_PROPERTIES_PRIVATE(properties);
- g_hash_table_destroy (priv->target_radios);
+ g_hash_table_destroy (priv->target_combos);
G_OBJECT_CLASS (glade_project_properties_parent_class)->finalize (object);
}
@@ -289,7 +289,7 @@ combobox_populate_from_catalog (GladeProjectProperties *properties,
version->major,
version->minor);
- gtk_combo_box_text_insert_text (GTK_COMBO_BOX_TEXT(combobox), position, name);
+ gtk_combo_box_text_insert (GTK_COMBO_BOX_TEXT(combobox), position, name, name);
if (major == version->major && minor == version->minor)
gtk_combo_box_set_active (GTK_COMBO_BOX(combobox), position);
@@ -299,7 +299,7 @@ combobox_populate_from_catalog (GladeProjectProperties *properties,
(gchar *) glade_catalog_get_name (catalog));
}
- g_hash_table_insert (priv->target_radios,
+ g_hash_table_insert (priv->target_combos,
g_strdup (glade_catalog_get_name (catalog)),
combobox);
}
@@ -1107,19 +1107,19 @@ project_targets_changed (GladeProject *project,
GladeCatalog *catalog = list->data;
GtkComboBox *combobox;
gint minor, major;
+ const gchar *name;
/* Skip if theres only one option */
if (g_list_length (glade_catalog_get_targets (catalog)) <= 1)
continue;
/* Fetch the version for this project */
- glade_project_get_target_version (priv->project,
- glade_catalog_get_name (catalog),
- &major, &minor);
+ name = glade_catalog_get_name (catalog);
+ glade_project_get_target_version (priv->project, name, &major, &minor);
/* Fetch the radios for this catalog */
- if (priv->target_radios &&
- (combobox = g_hash_table_lookup (priv->target_radios, glade_catalog_get_name (catalog))) != NULL)
+ if (priv->target_combos &&
+ (combobox = g_hash_table_lookup (priv->target_combos, name)) != NULL)
{
g_autofree gchar *id = NULL;
id = g_strdup_printf ("%d.%d", major, minor);