You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
2.1 KiB
C

/* -*- Mode: C; c-basic-offset: 4 -*- */
%%
headers
#include <Python.h>
#include <glib.h>
#include "xdgmime.h"
%%
modulename _sugarext
%%
ignore-glob
*_get_type
_*
%%
override sugar_mime_get_mime_type_for_file kwargs
static PyObject *
_wrap_sugar_mime_get_mime_type_for_file(PyObject *self, PyObject *args, PyObject *kwargs)
{
static char *kwlist[] = { "filename", NULL };
char *filename;
const char *ret;
if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:get_mime_type_for_file", kwlist, &filename))
return NULL;
ret = sugar_mime_get_mime_type_for_file(filename, NULL);
if (ret)
return PyString_FromString(ret);
Py_INCREF(Py_None);
return Py_None;
}
%%
override sugar_mime_list_mime_parents kwargs
static PyObject *
_wrap_sugar_mime_list_mime_parents(PyObject *self, PyObject *args, PyObject *kwargs)
{
static char *kwlist[] = { "mime_type", NULL };
char *mime_type;
char **parents, **tmp;
int i = 0, j;
PyObject *ret;
if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:list_mime_parents", kwlist, &mime_type))
return NULL;
parents = (char **)sugar_mime_list_mime_parents(mime_type);
if (!parents)
return PyTuple_New(0);
tmp = parents;
while (*tmp)
tmp++, i++;
ret = PyTuple_New(i);
for (j = 0; j < i; j++)
PyTuple_SetItem(ret, j, PyString_FromString(parents[j]));
return ret;
}
%%
override g_uri_list_extract_uris kwargs
static PyObject *
_wrap_g_uri_list_extract_uris(PyObject *self, PyObject *args, PyObject *kwargs)
{
static char *kwlist[] = { "uri_list", NULL };
char *uri_list;
char **uris, **tmp;
int i = 0, j;
PyObject *ret;
if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:uri_list_extract_uris", kwlist, &uri_list))
return NULL;
uris = (char **)g_uri_list_extract_uris(uri_list);
if (!uris)
return PyTuple_New(0);
tmp = uris;
while (*tmp)
tmp++, i++;
ret = PyTuple_New(i);
for (j = 0; j < i; j++)
PyTuple_SetItem(ret, j, PyString_FromString(uris[j]));
return ret;
}
%%