SX editor - use integer-type schema parameters rather than string and double

GnuCash expects these values to be integers anyway,
so this avoids needless type conversions

Release note: if you previously configured and saved the number of
months to display or the height of the scheduled transaction list,
these values will be reset and you will have to configure and change
those once more after this upgrade.
This commit is contained in:
Geert Janssens
2024-12-11 21:26:54 +01:00
parent 996ce3a03e
commit 3bfec43584
2 changed files with 9 additions and 14 deletions

View File

@@ -508,7 +508,7 @@ gnc_plugin_page_sx_list_create_widget (GncPluginPage *plugin_page)
/* Set the paned position from the preferences, default 160 */
gtk_paned_set_position (GTK_PANED(priv->widget),
gnc_prefs_get_float (GNC_PREFS_GROUP_SXED,
gnc_prefs_get_int (GNC_PREFS_GROUP_SXED,
GNC_PREF_DIVIDER_POS));
{
@@ -585,9 +585,8 @@ gnc_plugin_page_sx_list_create_widget (GncPluginPage *plugin_page)
g_object_ref_sink (priv->gdcal);
/* Set number of months from preference, default 12 */
gchar *num_months = gnc_prefs_get_string (GNC_PREFS_GROUP_SXED, GNC_PREF_NUM_OF_MONTHS);
gnc_dense_cal_set_num_months (priv->gdcal, atoi (num_months));
g_free (num_months);
auto num_months = gnc_prefs_get_int (GNC_PREFS_GROUP_SXED, GNC_PREF_NUM_OF_MONTHS);
gnc_dense_cal_set_num_months (priv->gdcal, num_months);
gtk_container_add (GTK_CONTAINER(swin), GTK_WIDGET(priv->gdcal));
}
@@ -766,23 +765,19 @@ gnc_plugin_page_sx_list_cmd_save_layout (GSimpleAction *simple,
{
auto plugin_page = GNC_PLUGIN_PAGE_SX_LIST(user_data);
GncPluginPageSxListPrivate *priv;
gchar *num_of_months;
gint paned_position;
g_return_if_fail (GNC_IS_PLUGIN_PAGE_SX_LIST(plugin_page));
priv = GNC_PLUGIN_PAGE_SX_LIST_GET_PRIVATE(plugin_page);
num_of_months = g_strdup_printf ("%d", gnc_dense_cal_get_num_months (priv->gdcal));
paned_position = gtk_paned_get_position (GTK_PANED(priv->widget));
gnc_prefs_set_float (GNC_PREFS_GROUP_SXED, GNC_PREF_DIVIDER_POS,
gnc_prefs_set_int (GNC_PREFS_GROUP_SXED, GNC_PREF_DIVIDER_POS,
paned_position);
gnc_prefs_set_string (GNC_PREFS_GROUP_SXED, GNC_PREF_NUM_OF_MONTHS,
num_of_months);
g_free (num_of_months);
gnc_prefs_set_int (GNC_PREFS_GROUP_SXED, GNC_PREF_NUM_OF_MONTHS,
gnc_dense_cal_get_num_months (priv->gdcal));
}
static void

View File

@@ -54,12 +54,12 @@
<summary>How many days in advance to notify the user.</summary>
<description>How many days in advance to notify the user.</description>
</key>
<key name="number-of-months" type="s">
<default>'12'</default>
<key name="number-of-months" type="i">
<default>12</default>
<summary>The number of months to be shown in editor.</summary>
<description>The number of months to be shown in editor.</description>
</key>
<key name="divider-position" type="d">
<key name="divider-position" type="i">
<default>160</default>
<summary>The horizontal position of the editor divider.</summary>
<description>The horizontal position of the editor divider.</description>