diff src/if_py_both.h @ 3826:530f5a903031 v7.3.671

updated for version 7.3.671 Problem: More Python code can be shared between Python 2 and 3. Solution: Move code to if_py_both.h. (ZyX)
author Bram Moolenaar <bram@vim.org>
date Fri, 21 Sep 2012 13:46:06 +0200
parents 2bf8c00741f7
children fd6ef931aa77
line wrap: on
line diff
--- a/src/if_py_both.h
+++ b/src/if_py_both.h
@@ -71,6 +71,31 @@ static struct PyMethodDef OutputMethods[
 /* Output buffer management
  */
 
+    static int
+OutputSetattr(PyObject *self, char *name, PyObject *val)
+{
+    if (val == NULL)
+    {
+	PyErr_SetString(PyExc_AttributeError, _("can't delete OutputObject attributes"));
+	return -1;
+    }
+
+    if (strcmp(name, "softspace") == 0)
+    {
+	if (!PyInt_Check(val))
+	{
+	    PyErr_SetString(PyExc_TypeError, _("softspace must be an integer"));
+	    return -1;
+	}
+
+	((OutputObject *)(self))->softspace = PyInt_AsLong(val);
+	return 0;
+    }
+
+    PyErr_SetString(PyExc_AttributeError, _("invalid attribute"));
+    return -1;
+}
+
     static PyObject *
 OutputWrite(PyObject *self, PyObject *args)
 {