[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29840] trunk/blender/source/blender/ makesrna/rna_cleanup/rna_cleaner.py: == rna cleanup ==

Luca Bonavita mindrones at gmail.com
Thu Jul 1 12:52:15 CEST 2010


Revision: 29840
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29840
Author:   mindrones
Date:     2010-07-01 12:52:15 +0200 (Thu, 01 Jul 2010)

Log Message:
-----------
== rna cleanup ==

- fixed a bug: it wasn't updating checks when importing from py file
- removed the global input_filename, I didn't like it very much

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/rna_cleanup/rna_cleaner.py

Modified: trunk/blender/source/blender/makesrna/rna_cleanup/rna_cleaner.py
===================================================================
--- trunk/blender/source/blender/makesrna/rna_cleanup/rna_cleaner.py	2010-07-01 10:10:29 UTC (rev 29839)
+++ trunk/blender/source/blender/makesrna/rna_cleanup/rna_cleaner.py	2010-07-01 10:52:15 UTC (rev 29840)
@@ -55,22 +55,22 @@
     # Usage
     if len(sys.argv)==1 or len(sys.argv)>3:
         usage()
-    if sys.argv[1]!= '-h':
-        input_filename = sys.argv[1]
-    else:
+    if sys.argv[1] == '-h':
         help()
-    if not (input_filename[-4:] == '.txt' or input_filename[-3:] == '.py'):
+    elif not (sys.argv[1][-4:] == '.txt' or sys.argv[1][-3:] == '.py'):
         print ('\nBad input file extension... exiting.')
         usage()
-    if len(sys.argv)==2:
-        order_priority = default_sort_choice
-        print ('\nSecond parameter missing: choosing to order by %s.' % font_bold(order_priority))
+    else:
+        inputfile = sys.argv[1]
+    if len(sys.argv) == 2:
+        sort_priority = default_sort_choice
+        print ('\nSecond parameter missing: choosing to order by %s.' % font_bold(sort_priority))
     elif len(sys.argv)==3:
-        order_priority = sys.argv[2]
-        if order_priority not in sort_choices:
-            print('\nWrong order_priority... exiting.')
+        sort_priority = sys.argv[2]
+        if sort_priority not in sort_choices:
+            print('\nWrong sort_priority... exiting.')
             usage()
-    return (input_filename, order_priority)
+    return (inputfile, sort_priority)
 
 
 def check_prefix(prop):
@@ -163,11 +163,11 @@
     rna_api = __import__(input_filename[:-3]).rna_api
 
     props_length_max = [0 for i in rna_api[0]] # this way if the vector will take more elements we are safe
-    for props in rna_api:
+    for index,props in enumerate(rna_api):
         [comment, changed, bclass, bfrom, bto, kwcheck, btype, description] = props
         kwcheck = check_prefix(bto)   # keyword-check
         changed = check_if_changed(bfrom, bto)  # changed?
-        props=[comment, changed, bclass, bfrom, bto, kwcheck, btype, description]
+        rna_api[index] = [comment, changed, bclass, bfrom, bto, kwcheck, btype, description]
         props_length = list(map(len,props)) # lengths
         props_length_max = list(map(max,zip(props_length_max,props_length)))    # max lengths
     return (rna_api,props_length_max)
@@ -198,14 +198,7 @@
     return props_list
 
 
-def write_files(props_list, props_length_max):
-    """
-    Writes in 3 files:
-      * output_filename_txt: formatted as txt input file
-      * output_filename_py:  formatted for readability (could be worked on)
-      * rna_api.py: unformatted, just as final output
-    """
-
+def file_basename(input_filename):
     # if needed will use os.path
     if input_filename[-4:] == '.txt':
         if input_filename[-9:] == '_work.txt':
@@ -217,10 +210,20 @@
             base_filename = input_filename[:-8]
         else:
             base_filename = input_filename[:-3]
+    return base_filename
 
+
+def write_files(basename, props_list, props_length_max):
+    """
+    Writes in 3 files:
+      * output_filename_work.txt: formatted as txt input file (can be edited)
+      * output_filename_work.py:  formatted for readability (can be edited)
+      * rna_api.py: unformatted, just as final output
+    """
+
     f_rna = open("rna_api.py",'w')
-    f_txt = open(base_filename+'_work.txt','w')
-    f_py = open(base_filename+'_work.py','w')
+    f_txt = open(basename + '_work.txt','w')
+    f_py = open(basename + '_work.py','w')
 
     # reminder: props=[comment, changed, bclass, bfrom, bto, kwcheck, btype, description]
     # [comment *] ToolSettings.snap_align_rotation -> use_snap_align_rotation:    boolean    [Align rotation with the snapping target]
@@ -249,7 +252,6 @@
 
 def main():
 
-    global input_filename
     global sort_choices, default_sort_choice
     global kw_prefixes, kw
 
@@ -261,9 +263,11 @@
     input_filename, sort_priority = check_commandline()
     props_list,props_length_max = get_props(input_filename)
     props_list = sort(props_list,sort_priority)
-    write_files(props_list,props_length_max)
 
+    output_basename = file_basename(input_filename)
+    write_files(output_basename, props_list,props_length_max)
 
+
 if __name__=='__main__':
     main()
 





More information about the Bf-blender-cvs mailing list