X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=lib%2Fgtksheet%2Fgsheetmodel.c;h=55b22db87010dd41488d15253dd279a13335ebfc;hb=ad1c79cd51b7ca9d0ad51d80ff916fa48ee5e893;hp=f06dc6382933fa4b3652857e33bd71a7026454e1;hpb=5e1469fde0a9b5bd3fefe52d7d8379b7379a618b;p=pspp-builds.git diff --git a/lib/gtksheet/gsheetmodel.c b/lib/gtksheet/gsheetmodel.c index f06dc638..55b22db8 100644 --- a/lib/gtksheet/gsheetmodel.c +++ b/lib/gtksheet/gsheetmodel.c @@ -20,7 +20,7 @@ #include #include "gsheetmodel.h" -#include "gtkextra-marshal.h" +#include enum { RANGE_CHANGED, @@ -80,7 +80,7 @@ g_sheet_model_base_init (gpointer g_class) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GSheetModelIface, range_changed), NULL, NULL, - gtkextra_VOID__INT_INT_INT_INT, + psppire_marshal_VOID__INT_INT_INT_INT, G_TYPE_NONE, 4, G_TYPE_INT, G_TYPE_INT, @@ -95,7 +95,7 @@ g_sheet_model_base_init (gpointer g_class) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GSheetModelIface, rows_inserted), NULL, NULL, - gtkextra_VOID__INT_INT, + psppire_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); @@ -107,7 +107,7 @@ g_sheet_model_base_init (gpointer g_class) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GSheetModelIface, rows_deleted), NULL, NULL, - gtkextra_VOID__INT_INT, + psppire_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); @@ -118,7 +118,7 @@ g_sheet_model_base_init (gpointer g_class) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GSheetModelIface, columns_inserted), NULL, NULL, - gtkextra_VOID__INT_INT, + psppire_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); @@ -130,7 +130,7 @@ g_sheet_model_base_init (gpointer g_class) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GSheetModelIface, columns_deleted), NULL, NULL, - gtkextra_VOID__INT_INT, + psppire_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); @@ -505,6 +505,102 @@ g_sheet_model_get_row_count(const GSheetModel *model) { g_return_val_if_fail (G_IS_SHEET_MODEL (model), -1); - return G_SHEET_MODEL_GET_IFACE (model)->get_row_count (model); } + + + +/* Column related functions */ +gboolean +g_sheet_model_get_column_sensitivity (const GSheetModel *model, gint col) +{ + g_return_val_if_fail (G_IS_SHEET_MODEL (model), FALSE); + + if ( NULL == G_SHEET_MODEL_GET_IFACE (model)->get_column_sensitivity) + return TRUE; + + return G_SHEET_MODEL_GET_IFACE (model)->get_column_sensitivity (model, col); +} + + +gchar * +g_sheet_model_get_column_subtitle (const GSheetModel *model, + gint col) +{ + g_return_val_if_fail (G_IS_SHEET_MODEL (model), NULL); + + if ( NULL == G_SHEET_MODEL_GET_IFACE (model)->get_column_subtitle) + return NULL; + + return G_SHEET_MODEL_GET_IFACE (model)->get_column_subtitle (model, col); +} + + +GtkSheetButton * +g_sheet_model_get_column_button (const GSheetModel *model, + gint col) +{ + GtkSheetButton *button = gtk_sheet_button_new (); + + g_return_val_if_fail (G_IS_SHEET_MODEL (model), NULL); + + if ( G_SHEET_MODEL_GET_IFACE (model)->get_column_title) + button->label = G_SHEET_MODEL_GET_IFACE (model)->get_column_title (model, col); + + return button; +} + +GtkJustification +g_sheet_model_get_column_justification (const GSheetModel *model, + gint col) +{ + g_return_val_if_fail (G_IS_SHEET_MODEL (model), GTK_JUSTIFY_LEFT); + + if ( G_SHEET_MODEL_GET_IFACE (model)->get_column_justification) + return G_SHEET_MODEL_GET_IFACE (model)->get_column_justification (model, col); + + return GTK_JUSTIFY_LEFT; +} + + + +gboolean +g_sheet_model_get_row_sensitivity (const GSheetModel *model, gint row) +{ + g_return_val_if_fail (G_IS_SHEET_MODEL (model), FALSE); + + if ( NULL == G_SHEET_MODEL_GET_IFACE (model)->get_row_sensitivity) + return TRUE; + + return G_SHEET_MODEL_GET_IFACE (model)->get_row_sensitivity (model, row); +} + + + +gchar * +g_sheet_model_get_row_subtitle (const GSheetModel *model, + gint row) +{ + g_return_val_if_fail (G_IS_SHEET_MODEL (model), NULL); + + if ( NULL == G_SHEET_MODEL_GET_IFACE (model)->get_row_subtitle) + return NULL; + + return G_SHEET_MODEL_GET_IFACE (model)->get_row_subtitle (model, row); +} + + +GtkSheetButton * +g_sheet_model_get_row_button (const GSheetModel *model, + gint row) +{ + GtkSheetButton *button = gtk_sheet_button_new (); + + g_return_val_if_fail (G_IS_SHEET_MODEL (model), NULL); + + if ( G_SHEET_MODEL_GET_IFACE (model)->get_row_title) + button->label = G_SHEET_MODEL_GET_IFACE (model)->get_row_title (model, row); + + return button; +} +