Skip to content

Commit

Permalink
Bug #628960 - Column width unchanged after shortening translation string
Browse files Browse the repository at this point in the history
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@19569 57a11ea4-9604-0410-9ed3-97b8803252fd
  • Loading branch information
gjanssens committed Sep 11, 2010
1 parent b56930b commit b16e1b2
Showing 1 changed file with 22 additions and 20 deletions.
42 changes: 22 additions & 20 deletions src/gnome-utils/gnc-tree-view.c
Expand Up @@ -1805,6 +1805,7 @@ gnc_tree_view_column_properties (GncTreeView *view,
gboolean visible;
int width = 0;
gchar *key;
GtkTreeViewColumnSizing sizing = GTK_TREE_VIEW_COLUMN_FIXED;

/* Set data used by other functions */
if (pref_name)
Expand All @@ -1818,26 +1819,33 @@ gnc_tree_view_column_properties (GncTreeView *view,
visible = gnc_tree_view_column_visible(view, NULL, pref_name);

/* Get width */
priv = GNC_TREE_VIEW_GET_PRIVATE(view);
if (priv->gconf_section)
if(default_width == 0)
{
key = g_strdup_printf("%s_%s", pref_name, GCONF_KEY_WIDTH);
width = gnc_gconf_get_int(priv->gconf_section, key, NULL);
g_free(key);
sizing = GTK_TREE_VIEW_COLUMN_AUTOSIZE;
}
else
{
priv = GNC_TREE_VIEW_GET_PRIVATE(view);
if (priv->gconf_section)
{
key = g_strdup_printf("%s_%s", pref_name, GCONF_KEY_WIDTH);
width = gnc_gconf_get_int(priv->gconf_section, key, NULL);
g_free(key);
}

/* If gconf comes back with a width of zero (or there is no gconf
* width) the use the default width for the column. Allow for
* padding L and R of the displayed data. */
if (width == 0)
width = default_width + 10;
if (width == 0)
width = 10;
/* If gconf comes back with a width of zero (or there is no gconf
* width) the use the default width for the column. Allow for
* padding L and R of the displayed data. */
if (width == 0)
width = default_width + 10;
if (width == 0)
width = 10;
}

/* Set column attributes */
g_object_set(G_OBJECT(column),
"visible", visible,
"sizing", GTK_TREE_VIEW_COLUMN_FIXED,
"sizing", sizing,
"fixed-width", width,
"resizable", resizable && pref_name != NULL,
"reorderable", pref_name != NULL,
Expand Down Expand Up @@ -1886,8 +1894,6 @@ gnc_tree_view_add_toggle_column (GncTreeView *view,
GncTreeViewPrivate *priv;
GtkTreeViewColumn *column;
GtkCellRenderer *renderer;
PangoLayout* layout;
int title_width;

g_return_val_if_fail (GNC_IS_TREE_VIEW(view), NULL);

Expand All @@ -1910,13 +1916,9 @@ gnc_tree_view_add_toggle_column (GncTreeView *view,
gtk_tree_view_column_add_attribute (column, renderer,
"visible", model_visibility_column);

layout = gtk_widget_create_pango_layout (GTK_WIDGET(view),
column_short_title);
pango_layout_get_pixel_size(layout, &title_width, NULL);
g_object_unref(layout);

gnc_tree_view_column_properties (view, column, pref_name, model_data_column,
title_width, FALSE, column_sort_fn);
0, FALSE, column_sort_fn);

gnc_tree_view_append_column (view, column);

Expand Down

0 comments on commit b16e1b2

Please sign in to comment.