X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fgtksheet%2Fgsheet-hetero-column.c;h=ebd67903335fe333fd70260389a4d19d134e65fc;hb=92f198d13c9214c0d75b936f0ea0dc2684ea914b;hp=a4781e9e9a56d4d59f9ced0c7bcb6b86923c52c1;hpb=dcf9b154cbcaa35c3d8459a201b77eec8bcb30bd;p=pspp diff --git a/lib/gtksheet/gsheet-hetero-column.c b/lib/gtksheet/gsheet-hetero-column.c index a4781e9e9a..ebd6790333 100644 --- a/lib/gtksheet/gsheet-hetero-column.c +++ b/lib/gtksheet/gsheet-hetero-column.c @@ -84,6 +84,7 @@ static GtkSheetButton default_button; GObject * g_sheet_hetero_column_new (gint default_width, gint n_columns) { + gint i; GSheetHeteroColumn *hg; GObject *retval; @@ -94,7 +95,6 @@ g_sheet_hetero_column_new (gint default_width, gint n_columns) hg->default_width = default_width; hg->col = g_new0(struct GSheetHeteroColumnUnit, n_columns); - gint i; for (i = 0 ; i < hg->n_columns; ++i ) { hg->col[i].button = default_button; @@ -104,7 +104,7 @@ g_sheet_hetero_column_new (gint default_width, gint n_columns) } static gint -g_sheet_hetero_column_get_width(const GSheetColumn *geom, gint i) +g_sheet_hetero_column_get_width(const GSheetColumn *geom, gint i, gpointer data) { GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); @@ -114,45 +114,39 @@ g_sheet_hetero_column_get_width(const GSheetColumn *geom, gint i) } static gint -g_sheet_hetero_column_get_sensitivity(const GSheetColumn *geom, gint u) +g_sheet_hetero_column_get_sensitivity(const GSheetColumn *geom, gint u, gpointer data) { - GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); - return TRUE; } static gint -g_sheet_hetero_column_get_visibility(const GSheetColumn *geom, gint u) +g_sheet_hetero_column_get_visibility(const GSheetColumn *geom, gint u, gpointer data) { - GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); - return TRUE; } -static const gchar * -g_sheet_hetero_column_get_button_label(const GSheetColumn *geom, gint u) +static gchar * +g_sheet_hetero_column_get_button_label(const GSheetColumn *geom, gint u, gpointer data) { GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); - - return hg->col[u].button.label; + + return g_locale_to_utf8(hg->col[u].button.label, -1, 0, 0, 0); } static GtkJustification -g_sheet_hetero_column_get_justification(const GSheetColumn *geom, gint u) +g_sheet_hetero_column_get_justification(const GSheetColumn *geom, gint u, gpointer data) { - GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); - return GTK_JUSTIFY_FILL; } static gint -g_sheet_hetero_column_get_column_count(const GSheetColumn *geom) +g_sheet_hetero_column_get_column_count(const GSheetColumn *geom, gpointer data) { GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geom); @@ -190,12 +184,24 @@ g_sheet_hetero_column_finalize (GObject *object) g_free(hg->col); } +static void +hetero_column_set_width(GSheetColumn *geo, + gint i, gint size, gpointer data) +{ + GSheetHeteroColumn *hg = G_SHEET_HETERO_COLUMN(geo); + + g_return_if_fail(i < hg->n_columns); + + hg->col[i].width = size; +} + + static void g_sheet_column_init (GSheetColumnIface *iface) { iface->get_width = g_sheet_hetero_column_get_width ; - iface->set_width = g_sheet_hetero_column_set_width ; + iface->set_width = hetero_column_set_width ; iface->get_sensitivity = g_sheet_hetero_column_get_sensitivity ; iface->get_visibility = g_sheet_hetero_column_get_visibility ; iface->get_justification = g_sheet_hetero_column_get_justification; @@ -219,13 +225,15 @@ g_sheet_hetero_column_set_button_label(GSheetHeteroColumn *geo, -void + +inline void g_sheet_hetero_column_set_width(GSheetHeteroColumn *geo, - gint i, gint size) + gint i, gint size) { - g_return_if_fail(i < geo->n_columns); + GSheetColumn *iface = G_SHEET_COLUMN(geo); - geo->col[i].width = size; + hetero_column_set_width(iface, i, size, 0); } +