pygobject r969 - in trunk: . gio



Author: paulp
Date: Mon Sep  8 21:20:44 2008
New Revision: 969
URL: http://svn.gnome.org/viewvc/pygobject?rev=969&view=rev

Log:
2008-09-09  Paul Pogonyshev  <pogonyshev gmx net>

	Bug 549517 â add __repr__ to gio.Drive, gio.Mount and gio.Volume

	* gio/gio.override (_wrap_g_drive_tp_repr, _wrap_g_mount_tp_repr):
	New functions.

	* gio/gvolume.override (_wrap_g_volume_tp_repr): New function.


Modified:
   trunk/ChangeLog
   trunk/gio/gio.override
   trunk/gio/gvolume.override

Modified: trunk/gio/gio.override
==============================================================================
--- trunk/gio/gio.override	(original)
+++ trunk/gio/gio.override	Mon Sep  8 21:20:44 2008
@@ -238,6 +238,26 @@
     return Py_None;
 }
 %%
+override-slot GDrive.tp_repr
+static PyObject *
+_wrap_g_drive_tp_repr(PyGObject *self)
+{
+    char *name = g_drive_get_name(G_DRIVE(self->obj));
+    gchar *representation;
+    PyObject *result;
+
+    if (name) {
+	representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name);
+	g_free(name);
+    }
+    else
+	representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self);
+
+    result = PyString_FromString(representation);
+    g_free(representation);
+    return result;
+}
+%%
 override g_app_info_get_all noargs
 static PyObject *
 _wrap_g_app_info_get_all (PyGObject *self)
@@ -493,6 +513,36 @@
     return Py_None;
 }
 %%
+override-slot GMount.tp_repr
+static PyObject *
+_wrap_g_mount_tp_repr(PyGObject *self)
+{
+    char *name = g_mount_get_name(G_MOUNT(self->obj));
+    char *uuid = g_mount_get_uuid(G_MOUNT(self->obj));
+    gchar *representation;
+    PyObject *result;
+
+    if (name) {
+	if (uuid) {
+	    representation = g_strdup_printf("<%s at %p: %s (%s)>",
+					     self->ob_type->tp_name, self, name, uuid);
+	}
+	else {
+	    representation = g_strdup_printf("<%s at %p: %s>",
+					     self->ob_type->tp_name, self, name);
+	}
+    }
+    else
+	representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self);
+
+    g_free(name);
+    g_free(uuid);
+
+    result = PyString_FromString(representation);
+    g_free(representation);
+    return result;
+}
+%%
 override g_vfs_get_supported_uri_schemes noargs
 static PyObject *
 _wrap_g_vfs_get_supported_uri_schemes(PyGObject *self)

Modified: trunk/gio/gvolume.override
==============================================================================
--- trunk/gio/gvolume.override	(original)
+++ trunk/gio/gvolume.override	Mon Sep  8 21:20:44 2008
@@ -133,3 +133,23 @@
     Py_INCREF(Py_None);
     return Py_None;
 }
+%%
+override-slot GVolume.tp_repr
+static PyObject *
+_wrap_g_volume_tp_repr(PyGObject *self)
+{
+    char *name = g_volume_get_name(G_VOLUME(self->obj));
+    gchar *representation;
+    PyObject *result;
+
+    if (name) {
+	representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name);
+	g_free(name);
+    }
+    else
+	representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self);
+
+    result = PyString_FromString(representation);
+    g_free(representation);
+    return result;
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]