X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fgtksheet%2Fgsheet-column-iface.c;h=6ab5e49923389363822289efd4022cbaa57c4ba8;hb=ea16e1238bfd173fcf5650ddfba180f1c8e1db30;hp=f1b915513774fece69f73729fb32d1db88abe1a5;hpb=dcf9b154cbcaa35c3d8459a201b77eec8bcb30bd;p=pspp-builds.git diff --git a/lib/gtksheet/gsheet-column-iface.c b/lib/gtksheet/gsheet-column-iface.c index f1b91551..6ab5e499 100644 --- a/lib/gtksheet/gsheet-column-iface.c +++ b/lib/gtksheet/gsheet-column-iface.c @@ -18,6 +18,8 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include + #include #include #include @@ -25,7 +27,7 @@ #include #include "gsheet-column-iface.h" #include "gtkextra-marshal.h" - +#include "gtkextra-sheet.h" enum { COLUMNS_CHANGED, @@ -73,8 +75,6 @@ g_sheet_column_get_type (void) } -static GtkSheetButton default_button; - static void g_sheet_column_base_init (gpointer g_class) { @@ -95,96 +95,85 @@ g_sheet_column_base_init (gpointer g_class) G_TYPE_INT); - default_button.state = GTK_STATE_NORMAL; - default_button.label = NULL; - default_button.label_visible = TRUE; - default_button.child = NULL; - default_button.justification = GTK_JUSTIFY_FILL; - initialized = TRUE; } } inline void -g_sheet_column_set_width (GSheetColumn *column, - gint col, gint size, const GtkSheet *sheet) +g_sheet_column_set_width (GSheetColumn *column, gint col, gint size) { g_return_if_fail (G_IS_SHEET_COLUMN (column)); if ((G_SHEET_COLUMN_GET_IFACE (column)->set_width) ) - (G_SHEET_COLUMN_GET_IFACE (column)->set_width) (column, col, - size, sheet); + (G_SHEET_COLUMN_GET_IFACE (column)->set_width) (column, col, size); } inline gint -g_sheet_column_get_width (const GSheetColumn *column, - gint col, const GtkSheet *sheet) +g_sheet_column_get_width (const GSheetColumn *column, gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), -1); g_assert (G_SHEET_COLUMN_GET_IFACE (column)->get_width); - return (G_SHEET_COLUMN_GET_IFACE (column)->get_width) (column, col, - sheet); + return (G_SHEET_COLUMN_GET_IFACE (column)->get_width) (column, col); } inline gboolean g_sheet_column_get_visibility(const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), FALSE); g_assert (G_SHEET_COLUMN_GET_IFACE (column)->get_visibility); return (G_SHEET_COLUMN_GET_IFACE (column)->get_visibility) (column, - col, sheet); + col); } inline gboolean g_sheet_column_get_sensitivity(const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), FALSE); g_assert (G_SHEET_COLUMN_GET_IFACE (column)->get_sensitivity); return (G_SHEET_COLUMN_GET_IFACE (column)->get_sensitivity) (column, - col, sheet); + col); } -inline const GtkSheetButton * +inline GtkSheetButton * g_sheet_column_get_button(const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { - g_return_val_if_fail (G_IS_SHEET_COLUMN (column), FALSE); + GtkSheetButton *button = gtk_sheet_button_new(); GSheetColumnIface *iface = G_SHEET_COLUMN_GET_IFACE (column); - static GtkSheetButton button ; - memcpy(&button, &default_button, sizeof (button)); + g_return_val_if_fail (G_IS_SHEET_COLUMN (column), FALSE); if ( iface->get_button_label) - button.label = iface->get_button_label(column, col, sheet); + button->label = iface->get_button_label(column, col); - return &button; + return button; } inline GtkJustification g_sheet_column_get_justification(const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), FALSE); g_assert (G_SHEET_COLUMN_GET_IFACE (column)->get_justification); - return (G_SHEET_COLUMN_GET_IFACE (column)->get_justification) (column, col, sheet); + return (G_SHEET_COLUMN_GET_IFACE (column)->get_justification) (column, col); } @@ -192,76 +181,76 @@ g_sheet_column_get_justification(const GSheetColumn *column, inline gint g_sheet_column_get_left_text_column (const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), -1); if ( ! G_SHEET_COLUMN_GET_IFACE (column)->get_left_text_column) return col; - return (G_SHEET_COLUMN_GET_IFACE (column)->get_left_text_column) (column, col, sheet); + return (G_SHEET_COLUMN_GET_IFACE (column)->get_left_text_column) (column, col); } inline gint g_sheet_column_get_right_text_column (const GSheetColumn *column, - gint col, const GtkSheet *sheet) + gint col) { g_return_val_if_fail (G_IS_SHEET_COLUMN (column), -1); if ( ! G_SHEET_COLUMN_GET_IFACE (column)->get_right_text_column) return col; - return (G_SHEET_COLUMN_GET_IFACE (column)->get_right_text_column) (column, col, sheet); + return (G_SHEET_COLUMN_GET_IFACE (column)->get_right_text_column) (column, col); } inline void g_sheet_column_set_left_text_column (const GSheetColumn *column, - gint col, gint i, const GtkSheet *sheet) + gint col, gint i) { g_return_if_fail (G_IS_SHEET_COLUMN (column)); if ( G_SHEET_COLUMN_GET_IFACE (column)->set_left_text_column) - (G_SHEET_COLUMN_GET_IFACE (column)->set_left_text_column) (column, col, i, sheet); + (G_SHEET_COLUMN_GET_IFACE (column)->set_left_text_column) (column, col, i); } inline void g_sheet_column_set_right_text_column (const GSheetColumn *column, - gint col, gint i, const GtkSheet *sheet) + gint col, gint i) { g_return_if_fail (G_IS_SHEET_COLUMN (column)); if ( G_SHEET_COLUMN_GET_IFACE (column)->set_right_text_column) - (G_SHEET_COLUMN_GET_IFACE (column)->set_right_text_column) (column, col, i, sheet); + (G_SHEET_COLUMN_GET_IFACE (column)->set_right_text_column) (column, col, i); } inline gint -g_sheet_column_get_column_count(const GSheetColumn *geo, const GtkSheet *sheet) +g_sheet_column_get_column_count(const GSheetColumn *geo) { g_return_val_if_fail (G_IS_SHEET_COLUMN (geo), -1); g_assert ( G_SHEET_COLUMN_GET_IFACE (geo)->get_column_count); - return (G_SHEET_COLUMN_GET_IFACE (geo)->get_column_count) (geo, sheet); + return (G_SHEET_COLUMN_GET_IFACE (geo)->get_column_count) (geo); } inline gint -g_sheet_column_start_pixel(const GSheetColumn *geo, gint col, const GtkSheet *sheet) +g_sheet_column_start_pixel(const GSheetColumn *geo, gint col) { - g_return_val_if_fail (G_IS_SHEET_COLUMN (geo), -1); - g_return_val_if_fail (col < - g_sheet_column_get_column_count(geo, sheet),-1); - gint i; gint start_pixel = 0; + g_return_val_if_fail (G_IS_SHEET_COLUMN (geo), -1); + g_return_val_if_fail (col < + g_sheet_column_get_column_count(geo),-1); + for ( i = 0 ; i < col ; ++i ) { - if ( g_sheet_column_get_visibility(geo, i, sheet)) - start_pixel += g_sheet_column_get_width(geo, i, sheet); + if ( g_sheet_column_get_visibility(geo, i)) + start_pixel += g_sheet_column_get_width(geo, i); } return start_pixel; @@ -271,7 +260,7 @@ g_sheet_column_start_pixel(const GSheetColumn *geo, gint col, const GtkSheet *sh inline void -g_sheet_column_columns_deleted(GSheetColumn *geo, +g_sheet_column_columns_changed(GSheetColumn *geo, gint first, gint n_columns) { g_return_if_fail (G_IS_SHEET_COLUMN (geo)); @@ -279,3 +268,7 @@ g_sheet_column_columns_deleted(GSheetColumn *geo, g_signal_emit (geo, sheet_column_signals[COLUMNS_CHANGED], 0, first, n_columns); } + + + +