X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-val-chooser.c;h=72ffac51119d88ae3f1943152bf0cfb36b940b45;hb=e7913c62251710319b06c50702c5db9afb612be5;hp=2ff3f188c76b7d9dcc7c654fe62e7e5f33efdd94;hpb=6ede2c036dd0520562bbeb31e02dfdc938403921;p=pspp diff --git a/src/ui/gui/psppire-val-chooser.c b/src/ui/gui/psppire-val-chooser.c index 2ff3f188c7..72ffac5111 100644 --- a/src/ui/gui/psppire-val-chooser.c +++ b/src/ui/gui/psppire-val-chooser.c @@ -30,43 +30,12 @@ #define _(msgid) gettext (msgid) #define N_(msgid) msgid -static void psppire_val_chooser_base_finalize (PsppireValChooserClass *, gpointer); -static void psppire_val_chooser_base_init (PsppireValChooserClass *class); static void psppire_val_chooser_class_init (PsppireValChooserClass *class); static void psppire_val_chooser_init (PsppireValChooser *vc); static void psppire_val_chooser_realize (GtkWidget *w); - - -GType -psppire_val_chooser_get_type (void) -{ - static GType psppire_val_chooser_type = 0; - - if (!psppire_val_chooser_type) - { - static const GTypeInfo psppire_val_chooser_info = - { - sizeof (PsppireValChooserClass), - (GBaseInitFunc) psppire_val_chooser_base_init, - (GBaseFinalizeFunc) psppire_val_chooser_base_finalize, - (GClassInitFunc)psppire_val_chooser_class_init, - (GClassFinalizeFunc) NULL, - NULL, - sizeof (PsppireValChooser), - 0, - (GInstanceInitFunc) psppire_val_chooser_init, - }; - - psppire_val_chooser_type = - g_type_register_static (GTK_TYPE_FRAME, "PsppireValChooser", - &psppire_val_chooser_info, 0); - } - - return psppire_val_chooser_type; -} - +G_DEFINE_TYPE (PsppireValChooser, psppire_val_chooser, GTK_TYPE_FRAME) static void psppire_val_chooser_finalize (GObject *object) @@ -83,7 +52,7 @@ enum }; -enum +enum { VC_VALUE, VC_SYSMIS, @@ -116,7 +85,7 @@ psppire_val_chooser_set_property (GObject *object, gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_SYSMIS].rb), !vr->input_var_is_string); gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_MISSING].rb), !vr->input_var_is_string); gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_RANGE].rb), !vr->input_var_is_string); - gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_LOW_UP].rb), !vr->input_var_is_string); + gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_LOW_UP].rb), !vr->input_var_is_string); gtk_widget_set_sensitive (GTK_WIDGET (vr->rw[VC_HIGH_DOWN].rb), !vr->input_var_is_string); break; default: @@ -145,6 +114,7 @@ psppire_val_chooser_get_property (GObject *object, break; case PROP_IS_STRING: g_value_set_boolean (value, vr->input_var_is_string); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -158,6 +128,8 @@ static void psppire_val_chooser_class_init (PsppireValChooserClass *class) { GObjectClass *object_class = G_OBJECT_CLASS (class); + + object_class->finalize = psppire_val_chooser_finalize; GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class); GParamSpec *is_string_spec = @@ -192,24 +164,6 @@ psppire_val_chooser_class_init (PsppireValChooserClass *class) } -static void -psppire_val_chooser_base_init (PsppireValChooserClass *class) -{ - GObjectClass *object_class = G_OBJECT_CLASS (class); - - object_class->finalize = psppire_val_chooser_finalize; -} - - - -static void -psppire_val_chooser_base_finalize (PsppireValChooserClass *class, - gpointer class_data) -{ - -} - - /* Set the focus of B to follow the sensitivity of A */ static void focus_follows_sensitivity (GtkWidget *a, GParamSpec *pspec, GtkWidget *b) @@ -237,7 +191,7 @@ static void simple_set (PsppireValChooser *vr, struct old_value *ov, const struc { const gchar *text = gtk_entry_get_text (rw->e1); - if ( vr->input_var_is_string) + if (vr->input_var_is_string) { ov->type = OV_STRING; ov->v.s = g_strdup (text); @@ -252,7 +206,7 @@ static void simple_set (PsppireValChooser *vr, struct old_value *ov, const struc static void lo_up_set (PsppireValChooser *vr, struct old_value *ov, const struct range_widgets *rw) { const gchar *text = gtk_entry_get_text (rw->e1); - + ov->type = OV_LOW_UP; ov->v.range[1] = g_strtod (text, 0); } @@ -261,7 +215,7 @@ static void lo_up_set (PsppireValChooser *vr, struct old_value *ov, const struct static void hi_down_set (PsppireValChooser *vr, struct old_value *ov, const struct range_widgets *rw) { const gchar *text = gtk_entry_get_text (rw->e1); - + ov->type = OV_HIGH_DOWN; ov->v.range[0] = g_strtod (text, 0); } @@ -289,7 +243,7 @@ static void range_set (PsppireValChooser *vr, struct old_value *ov, const struct ov->type = OV_RANGE; ov->v.range[0] = g_strtod (text, 0); - + text = gtk_entry_get_text (rw->e2); ov->v.range[1] = g_strtod (text, 0); } @@ -308,7 +262,7 @@ static GtkWidget * range_entry (struct layout *l, struct range_widgets *rw) "valign", GTK_ALIGN_CENTER, "halign", GTK_ALIGN_START, NULL); - + g_signal_connect (vbox, "notify::sensitive", G_CALLBACK (focus_follows_sensitivity), entrylo); @@ -329,7 +283,7 @@ static GtkWidget * simple_entry (struct layout *l, struct range_widgets *rw) } -static struct layout range_opt[n_VAL_CHOOSER_BUTTONS]= +static struct layout range_opt[n_VAL_CHOOSER_BUTTONS]= { {N_("_Value:"), simple_entry, simple_set }, {N_("_System Missing"), NULL, sysmis_set }, @@ -352,7 +306,7 @@ psppire_val_chooser_init (PsppireValChooser *vr) "margin-start", 5, "margin-end", 5, NULL); - + vr->input_var_is_string = FALSE; for (i = 0; i < n_VAL_CHOOSER_BUTTONS; ++i) @@ -375,14 +329,14 @@ psppire_val_chooser_init (PsppireValChooser *vr) 0, row, 1, 1); gtk_widget_set_hexpand (GTK_WIDGET (vr->rw[i].rb), FALSE); - + /* Attach the labels */ gtk_grid_attach (GTK_GRID (grid), GTK_WIDGET (vr->rw[i].label), 1, row, 1, 1); gtk_widget_set_hexpand (GTK_WIDGET (vr->rw[i].label), TRUE); - + ++row; if (l->fill) @@ -394,7 +348,7 @@ psppire_val_chooser_init (PsppireValChooser *vr) gtk_grid_attach (GTK_GRID (grid), fill, 1, row, 1, 1); gtk_widget_set_hexpand (fill, TRUE); - + ++row; g_signal_connect (vr->rw[i].rb, "toggled", G_CALLBACK (set_sensitivity_from_toggle), fill); @@ -408,15 +362,6 @@ psppire_val_chooser_init (PsppireValChooser *vr) gtk_widget_show_all (grid); } - -GtkWidget* -psppire_val_chooser_new (void) -{ - return GTK_WIDGET (g_object_new (psppire_val_chooser_get_type (), NULL)); -} - - - static void psppire_val_chooser_realize (GtkWidget *w) { @@ -441,7 +386,7 @@ old_value_copy (struct old_value *ov) { struct old_value *copy = g_memdup (ov, sizeof (*copy)); - if ( ov->type == OV_STRING ) + if (ov->type == OV_STRING) copy->v.s = g_strdup (ov->v.s); return copy; @@ -539,7 +484,7 @@ old_value_get_type (void) { static GType t = 0; - if (t == 0 ) + if (t == 0) { t = g_boxed_type_register_static ("psppire-recode-old-values", (GBoxedCopyFunc) old_value_copy, @@ -610,7 +555,7 @@ psppire_val_chooser_get_status (PsppireValChooser *vr, struct old_value *ov) for (i = 0; i < n_VAL_CHOOSER_BUTTONS; ++i) { - if ( gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (vr->rw[i].rb))) + if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (vr->rw[i].rb))) { range_opt[i].set (vr, ov, &vr->rw[i]); break; @@ -633,7 +578,7 @@ void psppire_val_chooser_set_status (PsppireValChooser *vr, const struct old_value *ov) { gint i; - if ( !ov ) + if (!ov) return; for (i = 0; i < n_VAL_CHOOSER_BUTTONS; ++i) @@ -651,14 +596,14 @@ psppire_val_chooser_set_status (PsppireValChooser *vr, const struct old_value *o gtk_toggle_button_set_active (vr->rw[0].rb, TRUE); gtk_entry_set_text (vr->rw[0].e1, ov->v.s); break; - + case OV_NUMERIC: { gchar *str; gtk_toggle_button_set_active (vr->rw[0].rb, TRUE); - + str = num_to_string (ov->v.v); - + gtk_entry_set_text (vr->rw[0].e1, str); g_free (str); }