Merged changes in the trunk up to revision 41225.
[blender-staging.git] / doc / python_api / sphinx_doc_gen.py
index 017c2acc36303362ac54c6c098b98c2c1531c7ed..1e0b3c2da0a8fc610a338a20bb50ca9ed2623fbd 100644 (file)
@@ -86,6 +86,7 @@ else:
         "gpu",
         "mathutils",
         "mathutils.geometry",
+        "Freestyle",
     )
 
     FILTER_BPY_TYPES = ("bpy_struct", "Operator", "ID")  # allow
@@ -120,6 +121,7 @@ import rna_info
 ClassMethodDescriptorType = type(dict.__dict__['fromkeys'])
 MethodDescriptorType = type(dict.get)
 GetSetDescriptorType = type(int.real)
+StaticMethodType = type(staticmethod(lambda: None))
 
 EXAMPLE_SET = set()
 EXAMPLE_SET_USED = set()
@@ -502,6 +504,12 @@ def pymodule2sphinx(BASEPATH, module_name, module, title):
             if type(descr) == GetSetDescriptorType:
                 py_descr2sphinx("   ", fw, descr, module_name, type_name, key)
 
+        for key, descr in descr_items:
+            if type(descr) == StaticMethodType:
+                descr = getattr(value, key)
+                write_indented_lines("   ", fw, descr.__doc__ or "Undocumented", False)
+                fw("\n")
+
         fw("\n\n")
 
     file.close()
@@ -1119,6 +1127,8 @@ def rna2sphinx(BASEPATH):
         fw("   mathutils.rst\n\n")
     if "mathutils.geometry" not in EXCLUDE_MODULES:
         fw("   mathutils.geometry.rst\n\n")
+    if "Freestyle" not in EXCLUDE_MODULES:
+        fw("   Freestyle.rst\n\n")
     if "bgl" not in EXCLUDE_MODULES:
         fw("   bgl.rst\n\n")
     if "blf" not in EXCLUDE_MODULES:
@@ -1254,6 +1264,10 @@ def rna2sphinx(BASEPATH):
         import mathutils.geometry as module
         pymodule2sphinx(BASEPATH, "mathutils.geometry", module, "Geometry Utilities")
 
+    if "Freestyle" not in EXCLUDE_MODULES:
+        import Freestyle as module
+        pymodule2sphinx(BASEPATH, "Freestyle", module, "Freestyle Data Types & Operators")
+
     if "blf" not in EXCLUDE_MODULES:
         import blf as module
         pymodule2sphinx(BASEPATH, "blf", module, "Font Drawing")