X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-var-view.c;h=0a020008fb0c0c0630cca080deb4e7c177120960;hb=b7968b37a3825943816f9c262d4b2979397f6a83;hp=e47b7b61e8d84dc37ef291cac4d3700fc7cc2f8d;hpb=6e097c89af440da90b43ce90864394c4d0c843d5;p=pspp diff --git a/src/ui/gui/psppire-var-view.c b/src/ui/gui/psppire-var-view.c index e47b7b61e8..0a020008fb 100644 --- a/src/ui/gui/psppire-var-view.c +++ b/src/ui/gui/psppire-var-view.c @@ -29,8 +29,6 @@ #define _(msgid) gettext (msgid) #define N_(msgid) msgid -static void psppire_var_view_base_finalize (PsppireVarViewClass *, gpointer); -static void psppire_var_view_base_init (PsppireVarViewClass *class); static void psppire_var_view_class_init (PsppireVarViewClass *class); static void psppire_var_view_init (PsppireVarView *var_view); @@ -64,43 +62,8 @@ model_init (PsppireSelectDestWidgetIface *iface) iface->contains_var = var_view_contains_var; } -GType -psppire_var_view_get_type (void) -{ - static GType psppire_var_view_type = 0; - - if (!psppire_var_view_type) - { - static const GTypeInfo psppire_var_view_info = - { - sizeof (PsppireVarViewClass), - (GBaseInitFunc) psppire_var_view_base_init, - (GBaseFinalizeFunc) psppire_var_view_base_finalize, - (GClassInitFunc)psppire_var_view_class_init, - (GClassFinalizeFunc) NULL, - NULL, - sizeof (PsppireVarView), - 0, - (GInstanceInitFunc) psppire_var_view_init, - }; - - static const GInterfaceInfo var_view_model_info = { - (GInterfaceInitFunc) model_init, /* Fill this in */ - NULL, - NULL - }; - - psppire_var_view_type = - g_type_register_static (GTK_TYPE_TREE_VIEW, "PsppireVarView", - &psppire_var_view_info, 0); - - g_type_add_interface_static (psppire_var_view_type, - PSPPIRE_TYPE_SELECT_DEST_WIDGET, - &var_view_model_info); - } - - return psppire_var_view_type; -} +G_DEFINE_TYPE_WITH_CODE (PsppireVarView, psppire_var_view, GTK_TYPE_TREE_VIEW, + G_IMPLEMENT_INTERFACE (PSPPIRE_TYPE_SELECT_DEST_WIDGET, model_init)) void psppire_var_view_clear (PsppireVarView *vv) @@ -229,7 +192,7 @@ psppire_var_view_set_property (GObject *object, gint c; var_view->n_cols = g_value_get_int (value); - var_view->cols = xrealloc (var_view->cols, sizeof (GType) * var_view->n_cols); + var_view->cols = g_realloc (var_view->cols, sizeof (GType) * var_view->n_cols); for (c = 0 ; c < var_view->n_cols; ++c) var_view->cols[c] = PSPPIRE_VAR_PTR_TYPE; @@ -250,6 +213,8 @@ psppire_var_view_class_init (PsppireVarViewClass *class) { GObjectClass *object_class = G_OBJECT_CLASS (class); + object_class->finalize = psppire_var_view_finalize; + GParamSpec *n_cols_spec = g_param_spec_int ("n-cols", "Number of columns", @@ -267,26 +232,6 @@ psppire_var_view_class_init (PsppireVarViewClass *class) n_cols_spec); } - -static void -psppire_var_view_base_init (PsppireVarViewClass *class) -{ - - GObjectClass *object_class = G_OBJECT_CLASS (class); - - object_class->finalize = psppire_var_view_finalize; -} - - - -static void -psppire_var_view_base_finalize (PsppireVarViewClass *class, - gpointer class_data) -{ -} - - - static void psppire_var_view_init (PsppireVarView *vv) { @@ -326,7 +271,7 @@ psppire_var_view_get_var_from_model (GtkTreeModel *model, gint column, GtkTreeIt GValue value = {0}; gtk_tree_model_get_value (model, iter, column, &value); - if ( G_VALUE_TYPE (&value) == PSPPIRE_VAR_PTR_TYPE) + if (G_VALUE_TYPE (&value) == PSPPIRE_VAR_PTR_TYPE) var = g_value_get_boxed (&value); else g_critical ("Unsupported type `%s', in variable name treeview.", @@ -356,7 +301,7 @@ psppire_var_view_append_names (PsppireVarView *vv, gint column, GString *string) gint n_vars = 0; GtkTreeIter iter; - if ( psppire_var_view_get_iter_first (vv, &iter) ) + if (psppire_var_view_get_iter_first (vv, &iter)) { do { @@ -384,7 +329,7 @@ psppire_var_view_list_names (PsppireVarView *vv, gint column) GtkTreeIter iter; GSList *list = NULL; - if ( psppire_var_view_get_iter_first (vv, &iter) ) + if (psppire_var_view_get_iter_first (vv, &iter)) { do { @@ -408,7 +353,7 @@ psppire_var_view_append_names_str (PsppireVarView *vv, gint column, struct strin gint n_vars = 0; GtkTreeIter iter; - if ( psppire_var_view_get_iter_first (vv, &iter) ) + if (psppire_var_view_get_iter_first (vv, &iter)) { do {