[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50965] trunk/blender: update UI introspection script for changes to blender.
Campbell Barton
ideasman42 at gmail.com
Mon Oct 1 04:04:09 CEST 2012
Revision: 50965
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50965
Author: campbellbarton
Date: 2012-10-01 02:04:06 +0000 (Mon, 01 Oct 2012)
Log Message:
-----------
update UI introspection script for changes to blender.
Modified Paths:
--------------
trunk/blender/intern/tools/bpy_introspect_ui.py
trunk/blender/release/scripts/startup/bl_ui/space_userpref.py
Modified: trunk/blender/intern/tools/bpy_introspect_ui.py
===================================================================
--- trunk/blender/intern/tools/bpy_introspect_ui.py 2012-10-01 01:26:54 UTC (rev 50964)
+++ trunk/blender/intern/tools/bpy_introspect_ui.py 2012-10-01 02:04:06 UTC (rev 50965)
@@ -151,6 +151,18 @@
def __sub__(self, other):
return self
+ def __truediv__(self, other):
+ return self
+
+ def __floordiv__(self, other):
+ return self
+
+ def __round__(self, other):
+ return self
+
+ def __float__(self):
+ return 0.0
+
# Custom functions
def lower(self):
return ""
@@ -200,6 +212,7 @@
def fake_main():
bpy = module_add("bpy")
+ # Registerable Subclasses
bpy.types = module_add("bpy.types")
bpy.types.Panel = Panel
bpy.types.Header = Header
@@ -207,6 +220,7 @@
bpy.types.PropertyGroup = PropertyGroup
bpy.types.Operator = Operator
+ # ID Subclasses
bpy.types.Armature = type("Armature", (), {})
bpy.types.Bone = type("Bone", (), {})
bpy.types.EditBone = type("EditBone", (), {})
@@ -219,6 +233,7 @@
bpy.types.Mesh = type("Mesh", (), {})
bpy.types.MetaBall = type("MetaBall", (), {})
bpy.types.Object = type("Object", (), {})
+ bpy.types.Speaker = type("Speaker", (), {})
bpy.types.Texture = type("Texture", (), {})
bpy.types.ParticleSettings = type("ParticleSettings", (), {})
bpy.types.World = type("World", (), {})
@@ -228,6 +243,12 @@
bpy.types.Scene.EnumProperty = NewAttr("bpy.types.Scene.EnumProperty", "EnumProperty")
bpy.types.Scene.StringProperty = NewAttr("bpy.types.Scene.StringProperty", "StringProperty")
+ # Misc Subclasses
+ bpy.types.EffectSequence = type("EffectSequence", (), {})
+
+ # Operator Subclases
+ bpy.types.WM_OT_doc_view = type("WM_OT_doc_view", (), {"_prefix": ""})
+
bpy.props = module_add("bpy.props")
bpy.props.StringProperty = dict
bpy.props.BoolProperty = dict
@@ -236,15 +257,19 @@
bpy.data = module_add("bpy.data")
bpy.data.scenes = ()
+ bpy.data.speakers = ()
bpy.data.groups = ()
bpy.data.meshes = ()
bpy.data.shape_keys = ()
bpy.data.materials = ()
+ bpy.data.lattices = ()
bpy.data.lamps = ()
bpy.data.textures = ()
bpy.data.cameras = ()
bpy.data.curves = ()
+ bpy.data.masks = ()
bpy.data.metaballs = ()
+ bpy.data.movieclips = ()
bpy.data.armatures = ()
bpy.data.particles = ()
@@ -261,7 +286,19 @@
bpy.path = module_add("bpy.path")
bpy.path.display_name = lambda f: ""
+ bpy_extras = module_add("bpy_extras")
+ bpy_extras.keyconfig_utils = module_add("bpy_extras.keyconfig_utils")
+ bpy_extras.keyconfig_utils.KM_HIERARCHY = ()
+ bpy_extras.keyconfig_utils.keyconfig_merge = lambda a, b: ()
+ addon_utils = module_add("addon_utils")
+ addon_utils.modules = lambda f: ()
+ addon_utils.module_bl_info = lambda f: None
+ addon_utils.addons_fake_modules = {}
+ addon_utils.error_duplicates = ()
+ addon_utils.error_encoding = ()
+
+
def fake_helper():
class PropertyPanel():
@@ -280,12 +317,10 @@
import bpy
-sys.path.insert(0, "/b/release/scripts/ui/")
-
def module_classes(mod):
classes = []
- for value in mod.__dict__.values():
+ for key, value in mod.__dict__.items():
try:
is_subclass = issubclass(value, BaseFakeUI)
except:
@@ -298,17 +333,22 @@
def main():
+
import os
+ BASE_DIR = os.path.join(os.path.dirname(__file__), "..", "..")
+ BASE_DIR = os.path.normpath(os.path.abspath(BASE_DIR))
+ MODULE_DIR = os.path.join(BASE_DIR, "release", "scripts", "startup")
- base = os.path.join(os.path.dirname(__file__), "..", "..")
- base = os.path.normpath(base)
- base = os.path.abspath(base)
+ print("Using base dir: %r" % BASE_DIR)
+ print("Using module dir: %r" % MODULE_DIR)
- scripts_dir = os.path.join(base, "release", "scripts", "ui")
+ sys.path.insert(0, MODULE_DIR)
+
+ scripts_dir = os.path.join(MODULE_DIR, "bl_ui")
for f in sorted(os.listdir(scripts_dir)):
- if f.endswith(".py"):
+ if f.endswith(".py") and not f.startswith("__init__"):
# print(f)
- mod = __import__(f[:-3])
+ mod = __import__("bl_ui." + f[:-3]).__dict__[f[:-3]]
classes = module_classes(mod)
@@ -318,9 +358,9 @@
# print("running...")
print("<ui>")
for f in sorted(os.listdir(scripts_dir)):
- if f.endswith(".py"):
+ if f.endswith(".py") and not f.startswith("__init__"):
# print(f)
- mod = __import__(f[:-3])
+ mod = __import__("bl_ui." + f[:-3]).__dict__[f[:-3]]
classes = module_classes(mod)
Modified: trunk/blender/release/scripts/startup/bl_ui/space_userpref.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_userpref.py 2012-10-01 01:26:54 UTC (rev 50964)
+++ trunk/blender/release/scripts/startup/bl_ui/space_userpref.py 2012-10-01 02:04:06 UTC (rev 50965)
@@ -20,7 +20,6 @@
import bpy
from bpy.types import Header, Menu, Panel
import os
-import addon_utils
def ui_items_general(col, context):
@@ -1033,6 +1032,8 @@
box.label(l)
def draw(self, context):
+ import addon_utils
+
layout = self.layout
userpref = context.user_preferences
More information about the Bf-blender-cvs
mailing list