[Bf-extensions-cvs] [87b2b31] master: Moved auto_register_keymaps to Screen for persistent storage
dairin0d
noreply at git.blender.org
Sun Nov 30 20:59:26 CET 2014
Commit: 87b2b312da75ae976f1feb5e3644916eaa48f7f2
Author: dairin0d
Date: Sun Nov 30 21:59:17 2014 +0200
Branches: master
https://developer.blender.org/rBAC87b2b312da75ae976f1feb5e3644916eaa48f7f2
Moved auto_register_keymaps to Screen for persistent storage
===================================================================
M space_view3d_enhanced_3d_cursor.py
===================================================================
diff --git a/space_view3d_enhanced_3d_cursor.py b/space_view3d_enhanced_3d_cursor.py
index 7bbd190..e7a93a4 100644
--- a/space_view3d_enhanced_3d_cursor.py
+++ b/space_view3d_enhanced_3d_cursor.py
@@ -21,7 +21,7 @@ bl_info = {
"name": "Enhanced 3D Cursor",
"description": "Cursor history and bookmarks; drag/snap cursor.",
"author": "dairin0d",
- "version": (2, 9, 5),
+ "version": (2, 9, 6),
"blender": (2, 7, 0),
"location": "View3D > Action mouse; F10; Properties panel",
"warning": "",
@@ -4067,6 +4067,10 @@ class Cursor3DToolsSettings(bpy.types.PropertyGroup):
min=0,
max=10,
options={'HIDDEN'})
+
+ auto_register_keymaps = bpy.props.BoolProperty(
+ name="Auto Register Keymaps",
+ default=True)
class Cursor3DToolsSceneSettings(bpy.types.PropertyGroup):
stick_obj_name = bpy.props.StringProperty(
@@ -4572,6 +4576,8 @@ class CursorMonitor(bpy.types.Operator):
context.area.tag_redraw()
settings = find_settings()
+
+ propagate_settings_to_all_screens(settings)
# ================== #
# Update bookmark enums when addon is initialized.
@@ -5344,11 +5350,23 @@ def set_stick_obj(scene, name=None, pos=None):
# the pre-chosen screen names may not exist
# in the user's blend.
+def propagate_settings_to_all_screens(settings):
+ # At least the most vital "user preferences" stuff
+ for screen in bpy.data.screens:
+ _settings = screen.cursor_3d_tools_settings
+ _settings.auto_register_keymaps = settings.auto_register_keymaps
+ _settings.free_coord_precision = settings.free_coord_precision
+
def find_settings():
#wm = bpy.data.window_managers[0]
#settings = wm.cursor_3d_tools_settings
- screen = bpy.data.screens.get("Default", bpy.data.screens[0])
+ try:
+ screen = bpy.data.screens.get("Default", bpy.data.screens[0])
+ except:
+ # find_settings() was called from register()/unregister()
+ screen = bpy.context.window_manager.windows[0].screen
+
try:
settings = screen.cursor_3d_tools_settings
except:
@@ -5401,10 +5419,11 @@ def update_keymap(activate):
cur_idname = 'view3d.cursor3d'
wm = bpy.context.window_manager
- userprefs = bpy.context.user_preferences
- addon_prefs = userprefs.addons[__name__].preferences
+ #userprefs = bpy.context.user_preferences
+ #addon_prefs = userprefs.addons[__name__].preferences
+ settings = find_settings()
- if not addon_prefs.auto_register_keymaps:
+ if not settings.auto_register_keymaps:
return
try:
@@ -5495,13 +5514,16 @@ class ThisAddonPreferences(bpy.types.AddonPreferences):
# when defining this in a submodule of a python package.
bl_idname = __name__
- auto_register_keymaps = bpy.props.BoolProperty(
- name="Auto Register Keymaps",
- default=True)
+ #auto_register_keymaps = bpy.props.BoolProperty(
+ # name="Auto Register Keymaps",
+ # default=True)
def draw(self, context):
layout = self.layout
- layout.prop(self, "auto_register_keymaps")
+ settings = find_settings()
+ row = layout.row()
+ row.prop(settings, "auto_register_keymaps")
+ row.prop(settings, "free_coord_precision")
def register():
More information about the Bf-extensions-cvs
mailing list