enum
{
PROP_0,
- PROP_PATH
+ PROP_PATH,
+ PROP_EDITING_CANCELED
};
static void
obj->path = g_value_dup_string (value);
break;
+ case PROP_EDITING_CANCELED:
+ break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
g_value_set_string (value, obj->path);
break;
+ case PROP_EDITING_CANCELED:
+ g_value_set_boolean (value, FALSE);
+ break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
static void
-psppire_button_editable_dispose (GObject *gobject)
+psppire_button_editable_finalize (GObject *gobject)
{
PsppireButtonEditable *obj = PSPPIRE_BUTTON_EDITABLE (gobject);
g_free (obj->path);
- obj->path = NULL;
- G_OBJECT_CLASS (psppire_button_editable_parent_class)->dispose (gobject);
+ G_OBJECT_CLASS (psppire_button_editable_parent_class)->finalize (gobject);
}
static gboolean
psppire_button_editable_button_release (GtkWidget *widget,
GdkEventButton *event)
{
- GtkButton *button;
-
if (event->button == 1)
{
- button = GTK_BUTTON (widget);
- gtk_button_released (button);
+ g_signal_emit_by_name (widget, "released", event, NULL);
}
return TRUE;
gobject_class->set_property = psppire_button_editable_set_property;
gobject_class->get_property = psppire_button_editable_get_property;
- gobject_class->dispose = psppire_button_editable_dispose;
+ gobject_class->finalize = psppire_button_editable_finalize;
widget_class->button_release_event = psppire_button_editable_button_release;
- g_object_class_install_property (G_OBJECT_CLASS (class),
+ g_object_class_install_property (gobject_class,
PROP_PATH,
g_param_spec_string ("path",
_("TreeView path"),
_("The path to the row in the GtkTreeView, as a string"),
"",
G_PARAM_READWRITE));
+
+ g_object_class_override_property (gobject_class,
+ PROP_EDITING_CANCELED,
+ "editing-canceled");
}
static void
{
return PSPPIRE_BUTTON_EDITABLE (g_object_new (PSPPIRE_TYPE_BUTTON_EDITABLE, NULL));
}
+
\f
/* GtkCellEditable interface. */
static void
button_editable_editing_done (GtkCellEditable *cell_editable)
{
-
-
}
static void
button_editable_remove_widget (GtkCellEditable *cell_editable)
{
-
-
}
static void