[pygtk/gtk-3.0: 3/55] Override: Dont access GtkAdjustment fields
- From: John Stowers <jstowers src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pygtk/gtk-3.0: 3/55] Override: Dont access GtkAdjustment fields
- Date: Sat, 17 Jul 2010 00:24:39 +0000 (UTC)
commit 969645acd02060ee0fe2c70aebb96a5520671173
Author: John Stowers <john stowers gmail com>
Date: Mon Jul 5 12:20:11 2010 +1200
Override: Dont access GtkAdjustment fields
gtk/gtk.override | 89 ++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 60 insertions(+), 29 deletions(-)
---
diff --git a/gtk/gtk.override b/gtk/gtk.override
index 35b0ec9..0fff370 100644
--- a/gtk/gtk.override
+++ b/gtk/gtk.override
@@ -105,6 +105,21 @@ pygtk_util_pyobject_as_double(PyObject *obj, gdouble *value, const char *argumen
}
static gboolean
+pygtk_util_set_pyobject_prop_from_double(PyGObject *obj, PyObject *val_obj, const char *argument_name_and_property_name)
+{
+ double d;
+
+ if (pygtk_util_pyobject_as_double(val_obj, &d, argument_name_and_property_name)) {
+ g_object_set(
+ G_OBJECT(obj->obj),
+ argument_name_and_property_name, d,
+ NULL);
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static gboolean
_main_quit(GIOChannel* source, GIOCondition condition, gpointer data)
{
gtk_main_quit();
@@ -3239,7 +3254,7 @@ _wrap_gtk_adjustment__set_value(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->value, "value"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self, value, "value"))
return -1;
gtk_adjustment_value_changed(adjustment);
return 0;
@@ -3252,7 +3267,7 @@ _wrap_gtk_adjustment__set_lower(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->lower, "lower"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self, value, "lower"))
return -1;
gtk_adjustment_changed(adjustment);
return 0;
@@ -3265,7 +3280,7 @@ _wrap_gtk_adjustment__set_upper(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->upper, "upper"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self, value, "upper"))
return -1;
gtk_adjustment_changed(adjustment);
return 0;
@@ -3278,8 +3293,8 @@ _wrap_gtk_adjustment__set_step_increment(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->step_increment,
- "step_increment"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self,
+ value, "step-increment"))
return -1;
gtk_adjustment_changed(adjustment);
return 0;
@@ -3292,8 +3307,8 @@ _wrap_gtk_adjustment__set_page_increment(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->page_increment,
- "page_increment"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self,
+ value, "page-increment"))
return -1;
gtk_adjustment_changed(adjustment);
return 0;
@@ -3306,7 +3321,8 @@ _wrap_gtk_adjustment__set_page_size(PyGObject *self, PyObject *value,
{
GtkAdjustment *adjustment = GTK_ADJUSTMENT(self->obj);
- if (!pygtk_util_pyobject_as_double(value, &adjustment->page_size, "page_size"))
+ if (!pygtk_util_set_pyobject_prop_from_double(self,
+ value, "page-size"))
return -1;
gtk_adjustment_changed(adjustment);
return 0;
@@ -3321,35 +3337,50 @@ _wrap_gtk_adjustment_set_all(PyGObject *self,
static char *kwlist[] = { "value", "lower", "upper", "step_increment",
"page_increment", "page_size", NULL };
GtkAdjustment *adj = GTK_ADJUSTMENT(self->obj);
- double *value = &adj->value, *lower = &adj->lower, *upper = &adj->upper;
- double *step_increment = &adj->step_increment;
- double *page_increment = &adj->page_increment;
- double *page_size = &adj->page_size;
- double old_value = *value, old_lower = *lower, old_upper = *upper;
- double old_step_increment = *step_increment;
- double old_page_increment = *page_increment;
- double old_page_size = *page_size;
+ double value;
+ double lower;
+ double upper;
+ double step_increment;
+ double page_increment;
+ double page_size;
+
+ g_object_get (G_OBJECT(adj),
+ "value", &value,
+ "lower", &lower,
+ "upper", &upper,
+ "step-increment", &step_increment,
+ "page-increment", &page_increment,
+ "page-size", &page_size,
+ NULL);
+
+ double old_value = value, old_lower = lower, old_upper = upper;
+ double old_step_increment = step_increment;
+ double old_page_increment = page_increment;
+ double old_page_size = page_size;
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
"|dddddd:gtk_adjustment_set_all",
kwlist,
- value, lower, upper, step_increment,
- page_increment, page_size)) {
- adj->value = old_value;
- adj->lower = old_lower;
- adj->upper = old_upper;
- adj->step_increment = old_step_increment;
- adj->page_increment = old_page_increment;
- adj->page_size = old_page_size;
+ &value, &lower, &upper, &step_increment,
+ &page_increment, &page_size)) {
+ g_object_set (G_OBJECT(adj),
+ "value", old_value,
+ "lower", old_lower,
+ "upper", old_upper,
+ "step-increment", old_step_increment,
+ "page-increment", old_page_increment,
+ "page-size", old_page_size,
+ NULL);
return NULL;
}
- if (adj->value != old_value)
+ if (gtk_adjustment_get_value(adj) != old_value)
gtk_adjustment_value_changed(adj);
- if (adj->lower != old_lower || adj->upper != old_upper
- || adj->step_increment != old_step_increment
- || adj->page_increment != old_page_increment
- || adj->page_size != old_page_size)
+ if (gtk_adjustment_get_lower(adj) != old_lower
+ || gtk_adjustment_get_upper(adj) != old_upper
+ || gtk_adjustment_get_step_increment(adj) != old_step_increment
+ || gtk_adjustment_get_page_increment(adj) != old_page_increment
+ || gtk_adjustment_get_page_size(adj) != old_page_size)
gtk_adjustment_changed(adj);
Py_INCREF(Py_None);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]