diff options
| author | Michael Biebl <biebl@debian.org> | 2017-05-11 14:55:55 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2017-05-11 14:55:55 +0200 |
| commit | c333f062ddcba9b35330647bf6cbd0a07f2d786e (patch) | |
| tree | 257c3a0c74c09f4ad2328eab5b932806405f0c1c /libnm/generate-setting-docs.py | |
| parent | a222e56e103f949b148a6942e385ccca2c26d9f3 (diff) | |
New upstream version 1.8.0 upstream/1.8.0
Diffstat (limited to 'libnm/generate-setting-docs.py')
| -rwxr-xr-x | libnm/generate-setting-docs.py | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/libnm/generate-setting-docs.py b/libnm/generate-setting-docs.py index e1ea9723..d0625b01 100755 --- a/libnm/generate-setting-docs.py +++ b/libnm/generate-setting-docs.py @@ -112,7 +112,7 @@ def get_prop_type(setting, pspec, propxml): return prop_type -def get_docs(setting, pspec, propxml): +def get_docs(propxml): doc_xml = propxml.find('gi:doc', ns_map) if doc_xml is None: return None @@ -162,6 +162,11 @@ def get_default_value(setting, pspec, propxml): return default_value +def settings_sort_key(x): + x_prefix = x.attrib['{%s}symbol-prefix' % ns_map['c']] + # always sort NMSettingConnection first + return (x_prefix != "setting_connection", x_prefix); + def escape(val): return str(val).replace('"', '"') @@ -186,7 +191,7 @@ settings = girxml.findall('./gi:namespace/gi:class[@parent="Setting"]', ns_map) # Hack. Need a better way to do this ipxml = girxml.find('./gi:namespace/gi:class[@name="SettingIPConfig"]', ns_map) settings.extend(girxml.findall('./gi:namespace/gi:class[@parent="SettingIPConfig"]', ns_map)) -settings = sorted(settings, key=lambda setting: setting.attrib['{%s}symbol-prefix' % ns_map['c']]) +settings = sorted(settings, key=settings_sort_key) init_constants(girxml, settings) @@ -207,7 +212,10 @@ for settingxml in settings: new_func = NM.__getattr__(settingxml.attrib['name']) setting = new_func() - outfile.write(" <setting name=\"%s\">\n" % setting.props.name) + class_desc = get_docs(settingxml) + if class_desc is None: + raise Exception("%s needs a gtk-doc block with one-line description" % setting.props.name) + outfile.write(" <setting name=\"%s\" description=\"%s\">\n" % (setting.props.name, class_desc)) setting_properties = { prop.name: prop for prop in GObject.list_properties(setting) } if args.overrides is None: @@ -231,7 +239,7 @@ for settingxml in settings: propxml = ipxml.find('./gi:property[@name="%s"]' % pspec.name, ns_map) value_type = get_prop_type(setting, pspec, propxml) - value_desc = get_docs(setting, pspec, propxml) + value_desc = get_docs(propxml) default_value = get_default_value(setting, pspec, propxml) if prop in setting_overrides: |