diff options
Diffstat (limited to 'bindings/lang_python.py')
| -rw-r--r-- | bindings/lang_python.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bindings/lang_python.py b/bindings/lang_python.py index 079eaa46..58b39708 100644 --- a/bindings/lang_python.py +++ b/bindings/lang_python.py @@ -793,9 +793,16 @@ register_constants(PyObject *d) parse_tuple_args.append('&%s' % arg_name) print >> fd, ' %s %s = NULL;' % (arg[0], arg[1]) elif arg_type in ['int', 'gint', 'gboolean', 'const gboolean'] + self.binding_data.enums: + if arg_options.get('optional'): + if not '|' in parse_tuple_format: + parse_tuple_format.append('|') parse_tuple_format.append('i') parse_tuple_args.append('&%s' % arg_name) - print >> fd, ' %s %s;' % (arg[0], arg[1]) + if arg_options.get('default'): + defval = arg_options.get('default')[2:] + print >> fd, ' %s %s = %s;' % (arg[0], arg[1], defval) + else: + print >> fd, ' %s %s;' % (arg[0], arg[1]) elif arg_type in ('GList*', 'xmlNode*'): parse_tuple_format.append('O') parse_tuple_args.append('&cvt_%s' % arg_name) |
