diff options
author | Johan Dahlin <johan@gnome.org> | 2008-08-02 06:13:46 +0000 |
---|---|---|
committer | Johan Dahlin <johan@src.gnome.org> | 2008-08-02 06:13:46 +0000 |
commit | e72525344fdab47604282581fec6d7ad449c1f76 (patch) | |
tree | 3223325152bdbc21b8b4f66807c6c8043b1f91ec | |
parent | 0b6932cf263ac3dc68640e3f59e0d83678315aea (diff) | |
download | pygobject-e72525344fdab47604282581fec6d7ad449c1f76.tar.gz pygobject-e72525344fdab47604282581fec6d7ad449c1f76.tar.xz pygobject-e72525344fdab47604282581fec6d7ad449c1f76.zip |
Add pyglib_float_from_timeval and use it
2008-08-02 Johan Dahlin <johan@gnome.org>
* gio/gfileinfo.override:
* gio/gio.override:
* glib/glibmodule.c (pyglib_get_current_time):
* glib/pyglib.c (pyglib_float_from_timeval):
* glib/pyglib.h:
Add pyglib_float_from_timeval and use it
svn path=/trunk/; revision=911
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | gio/gfileinfo.override | 5 | ||||
-rw-r--r-- | gio/gio.override | 1 | ||||
-rw-r--r-- | glib/glibmodule.c | 4 | ||||
-rw-r--r-- | glib/pyglib.c | 16 | ||||
-rw-r--r-- | glib/pyglib.h | 1 |
6 files changed, 29 insertions, 7 deletions
@@ -1,5 +1,14 @@ 2008-08-02 Johan Dahlin <johan@gnome.org> + * gio/gfileinfo.override: + * gio/gio.override: + * glib/glibmodule.c (pyglib_get_current_time): + * glib/pyglib.c (pyglib_float_from_timeval): + * glib/pyglib.h: + Add pyglib_float_from_timeval and use it + +2008-08-02 Johan Dahlin <johan@gnome.org> + * docs/Makefile.am: * docs/reference/pyglib-constants.xml: * docs/reference/pyglib-functions.xml: diff --git a/gio/gfileinfo.override b/gio/gfileinfo.override index 0827acc..4b60c62 100644 --- a/gio/gfileinfo.override +++ b/gio/gfileinfo.override @@ -56,12 +56,9 @@ static PyObject * _wrap_g_file_info_get_modification_time(PyGObject *self, PyObject *unused) { GTimeVal timeval; - double ret; g_file_info_get_modification_time(G_FILE_INFO(self->obj), &timeval); - - ret = (double)timeval.tv_sec + (double)timeval.tv_usec * 0.000001; - return PyFloat_FromDouble(ret); + return pyglib_float_from_timeval(timeval); } /* GFileInfo.get_attribute_data: No ArgType for GFileAttributeType* */ diff --git a/gio/gio.override b/gio/gio.override index 74ae6f7..13a4950 100644 --- a/gio/gio.override +++ b/gio/gio.override @@ -29,6 +29,7 @@ headers #include <pygobject.h> #include <gio/gio.h> #include "pygio-utils.h" +#include "pyglib.h" #define BUFSIZE 8192 diff --git a/glib/glibmodule.c b/glib/glibmodule.c index 79ae6c8..446be87 100644 --- a/glib/glibmodule.c +++ b/glib/glibmodule.c @@ -401,11 +401,9 @@ static PyObject * pyglib_get_current_time(PyObject *unused) { GTimeVal timeval; - double ret; g_get_current_time(&timeval); - ret = (double)timeval.tv_sec + (double)timeval.tv_usec * 0.000001; - return PyFloat_FromDouble(ret); + return pyglib_float_from_timeval(timeval); } static PyObject * diff --git a/glib/pyglib.c b/glib/pyglib.c index 24327f1..1c33995 100644 --- a/glib/pyglib.c +++ b/glib/pyglib.c @@ -471,6 +471,22 @@ pyglib_option_context_new (GOptionContext *context) return (PyObject *)self; } +/** + * pyglib_option_context_new: + * @context: a GTimeVal struct + * + * Converts a GTimeVal struct to a python float + * + * Returns: a float representing the timeval + */ +PyObject * +pyglib_float_from_timeval(GTimeVal timeval) +{ + double ret; + ret = (double)timeval.tv_sec + (double)timeval.tv_usec * 0.000001; + return PyFloat_FromDouble(ret); +} + /****** Private *****/ diff --git a/glib/pyglib.h b/glib/pyglib.h index 5659e77..d7322d3 100644 --- a/glib/pyglib.h +++ b/glib/pyglib.h @@ -48,6 +48,7 @@ void pyglib_unblock_threads(void); PyObject * pyglib_option_context_new(GOptionContext *context); PyObject * pyglib_option_group_new(GOptionGroup *group); GOptionGroup * pyglib_option_group_transfer_group(PyObject *self); +PyObject * pyglib_float_from_timeval(GTimeVal timeval); #define pyglib_begin_allow_threads \ G_STMT_START { \ |