Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2011-12-19 18:38:06 +0400
committerBastien Montagne <montagne29@wanadoo.fr>2011-12-19 18:38:06 +0400
commitdbe3331a31fa8391e70f79f6bf4743b8f669bf88 (patch)
tree31547092cd50f50c65a66ed1394e5dab44e05075 /render_copy_settings
parent478309859bab63dd28a80202c3df6e180b228524 (diff)
pep8 edits and a few other code styling. Non functionnaly changes.
Diffstat (limited to 'render_copy_settings')
-rw-r--r--render_copy_settings/__init__.py61
-rw-r--r--render_copy_settings/operator.py39
-rw-r--r--render_copy_settings/panel.py17
-rw-r--r--render_copy_settings/presets.py19
4 files changed, 77 insertions, 59 deletions
diff --git a/render_copy_settings/__init__.py b/render_copy_settings/__init__.py
index ee02f38c..bf433b35 100644
--- a/render_copy_settings/__init__.py
+++ b/render_copy_settings/__init__.py
@@ -33,30 +33,23 @@
# Renamed in “Render Copy Settings”.
# Huge changes:
# * It is now possible to individually copy each render setting.
-# * It is now possible to individually select each affected scene, and then filter them out
-# even further with a regex.
-# WARNING: this addon now needs a Blender patched with the ui_template_list diff, else it won’t
-# be fully functional…
+# * It is now possible to individually select each affected scene, and
+# then filter them out even further with a regex.
#
# 0.1.1
# Minor changes:
# * PEP8 compliant.
# * Moved to contrib…
-# WARNING: this addon now needs a Blender patched with the ui_template_list diff, else it won’t
-# be fully functional (even though working)…
#
# 0.1.2
# Minor changes:
-# * Updated accordingly to the changes in enhanced ui_template_list proposal.
-# WARNING: this addon now needs a Blender patched with the ui_template_list diff, else it won’t
-# be fully functional (even though working)…
+# * Updated accordingly to the changes in enhanced ui_template_list
+# proposal.
#
# 0.1.3
# Minor changes:
-# * Fixed a small bug that was disabling the whole UI when entering a filtering regex
-# matching no scene.
-# WARNING: this addon now needs a Blender patched with the ui_template_list diff, else it won’t
-# be fully functional (even though working)…
+# * Fixed a small bug that was disabling the whole UI when entering a
+# filtering regex matching no scene.
#
# ##### END OF CHANGELOG #####
@@ -67,10 +60,12 @@ bl_info = {
"blender": (2, 6, 1),
"api": 42648,
"location": "Render buttons (Properties window)",
- "description": "Allows to copy a selection of render settings from current scene to others.",
- "wiki_url": "http://wiki.blender.org/index.php/Extensions:2.5/Py/"\
+ "description": "Allows to copy a selection of render settings from " \
+ "current scene to others.",
+ "wiki_url": "http://wiki.blender.org/index.php/Extensions:2.5/Py/" \
"Scripts/Render/Copy Settings",
- "tracker_url": "http://projects.blender.org/tracker/index.php?func=detail&aid=25832",
+ "tracker_url": "http://projects.blender.org/tracker/index.php?" \
+ "func=detail&aid=25832",
"category": "Render"}
@@ -84,28 +79,32 @@ else:
import bpy
-from bpy.props import StringProperty, BoolProperty, IntProperty, CollectionProperty
+from bpy.props import StringProperty, BoolProperty, \
+ IntProperty, CollectionProperty
-####################################################################################################
-# Global properties for the script, for UI (as there’s no way to let them in the operator…).
-####################################################################################################
+###############################################################################
+# Global properties for the script, for UI (as there’s no way to let them in
+# the operator…).
+###############################################################################
class RenderCopySettingsScene(bpy.types.PropertyGroup):
allowed = BoolProperty(default=True)
- # A string of identifiers (colon delimited) which property’s controls should be displayed
- # in a template_list.
- template_list_controls = StringProperty(default="allowed", options={"HIDDEN"})
+ # A string of identifiers (colon delimited) which property’s controls
+ # should be displayed in a template_list.
+ template_list_controls = StringProperty(default="allowed",
+ options={"HIDDEN"})
class RenderCopySettingsSetting(bpy.types.PropertyGroup):
strid = StringProperty(default="")
copy = BoolProperty(default=False)
- # A string of identifiers (colon delimited) which property’s controls should be displayed
- # in a template_list.
- template_list_controls = StringProperty(default="copy", options={"HIDDEN"})
+ # A string of identifiers (colon delimited) which property’s controls
+ # should be displayed in a template_list.
+ template_list_controls = StringProperty(default="copy",
+ options={"HIDDEN"})
class RenderCopySettings(bpy.types.PropertyGroup):
@@ -113,7 +112,9 @@ class RenderCopySettings(bpy.types.PropertyGroup):
# It should only contain one element for each render setting.
affected_settings = CollectionProperty(type=RenderCopySettingsSetting,
name="Affected Settings",
- description="The list of all available render settings")
+ description="The list of all " \
+ "available render " \
+ "settings")
# XXX Unused, but needed for template_list…
aff_sett_idx = IntProperty()
@@ -121,12 +122,14 @@ class RenderCopySettings(bpy.types.PropertyGroup):
# It should only contain one element for each scene.
allowed_scenes = CollectionProperty(type=RenderCopySettingsScene,
name="Allowed Scenes",
- description="The list all scenes in the file")
+ description="The list all scenes " \
+ "in the file")
# XXX Unused, but needed for template_list…
allw_scenes_idx = IntProperty()
filter_scene = StringProperty(name="Filter Scene",
- description="Regex to only affect scenes which name matches it",
+ description="Regex to only affect scenes " \
+ "which name matches it",
default="")
diff --git a/render_copy_settings/operator.py b/render_copy_settings/operator.py
index 830ce4a7..1d13fbbe 100644
--- a/render_copy_settings/operator.py
+++ b/render_copy_settings/operator.py
@@ -21,13 +21,14 @@
import bpy
from . import presets
-# These operators are only defined because it seems impossible to directly edit properties from
-# UI code…
+# These operators are only defined because it seems impossible to directly
+# edit properties from UI code…
# A sorting func for collections (working in-place).
# XXX Not optimized at all…
-# XXX If some items in the collection do not have the sortkey property, they are just ignored…
+# XXX If some items in the collection do not have the sortkey property,
+# they are just ignored…
def collection_property_sort(collection, sortkey, start_idx=0):
while start_idx + 1 < len(collection):
while not hasattr(collection[start_idx], sortkey):
@@ -49,8 +50,8 @@ def collection_property_sort(collection, sortkey, start_idx=0):
class RenderCopySettingsPrepare(bpy.types.Operator):
'''
- Prepare internal data for render_copy_settings (gathering all existing render settings,
- and scenes)
+ Prepare internal data for render_copy_settings (gathering all existing
+ render settings, and scenes)
'''
bl_idname = "scene.render_copy_settings_prepare"
bl_label = "Render: Copy Settings Prepare"
@@ -63,7 +64,8 @@ class RenderCopySettingsPrepare(bpy.types.Operator):
def execute(self, context):
cp_sett = context.scene.render_copy_settings
- # Get all available render settings, and update accordingly affected_settings…
+ # Get all available render settings, and update accordingly
+ # affected_settings…
props = {}
for prop in context.scene.render.bl_rna.properties:
if prop.identifier in {'rna_type'}:
@@ -74,7 +76,7 @@ class RenderCopySettingsPrepare(bpy.types.Operator):
corr = 0
for i, sett in enumerate(cp_sett.affected_settings):
if sett.strid not in props:
- cp_sett.affected_settings.remove(i-corr)
+ cp_sett.affected_settings.remove(i - corr)
corr += 1
else:
del props[sett.strid]
@@ -92,18 +94,19 @@ class RenderCopySettingsPrepare(bpy.types.Operator):
try:
regex = re.compile(cp_sett.filter_scene)
except Exception as e:
- self.report('ERROR_INVALID_INPUT', "The filter-scene regex " \
- "did not compile:\n (%s)." % str(e))
+ self.report('ERROR_INVALID_INPUT', "The filter-scene " \
+ "regex did not compile:\n (%s)." % str(e))
return {'CANCELLED'}
except:
regex = None
- self.report('WARNING', "Unable to import the re module. Regex " \
- "scene filtering will be disabled!")
+ self.report('WARNING', "Unable to import the re module. " \
+ "Regex scene filtering will be disabled!")
scenes = set()
for scene in bpy.data.scenes:
if scene == bpy.context.scene: # Exclude current scene!
continue
- if regex: # If a valid filtering regex, only keep scenes matching it.
+ # If a valid filtering regex, only keep scenes matching it.
+ if regex:
if regex.match(scene.name):
scenes.add(scene.name)
else:
@@ -163,7 +166,8 @@ class RenderCopySettingsPreset(bpy.types.Operator):
def do_copy(context, affected_settings, allowed_scenes):
# Stores render settings from current scene.
- p = {sett: getattr(context.scene.render, sett) for sett in affected_settings}
+ p = {sett: getattr(context.scene.render, sett) \
+ for sett in affected_settings}
# put it in all other (valid) scenes’ render settings!
for scene in bpy.data.scenes:
# If scene not in allowed scenes, skip.
@@ -188,9 +192,12 @@ class RenderCopySettings(bpy.types.Operator):
def execute(self, context):
regex = None
cp_sett = context.scene.render_copy_settings
- affected_settings = set([sett.strid for sett in cp_sett.affected_settings if sett.copy])
- allowed_scenes = set([sce.name for sce in cp_sett.allowed_scenes if sce.allowed])
- do_copy(context, affected_settings=affected_settings, allowed_scenes=allowed_scenes)
+ affected_settings = {sett.strid for sett in cp_sett.affected_settings \
+ if sett.copy}
+ allowed_scenes = {sce.name for sce in cp_sett.allowed_scenes \
+ if sce.allowed}
+ do_copy(context, affected_settings=affected_settings,
+ allowed_scenes=allowed_scenes)
return {'FINISHED'}
diff --git a/render_copy_settings/panel.py b/render_copy_settings/panel.py
index 486f186c..d187fe07 100644
--- a/render_copy_settings/panel.py
+++ b/render_copy_settings/panel.py
@@ -34,32 +34,35 @@ class RENDER_PT_copy_settings(bpy.types.Panel):
layout = self.layout
cp_sett = context.scene.render_copy_settings
- layout.operator("scene.render_copy_settings", text="Copy Render Settings")
+ layout.operator("scene.render_copy_settings",
+ text="Copy Render Settings")
- # This will update affected_settings/allowed_scenes (as this seems to be impossible
- # to do it from here…).
+ # This will update affected_settings/allowed_scenes (as this seems
+ # to be impossible to do it from here…).
if bpy.ops.scene.render_copy_settings_prepare.poll():
bpy.ops.scene.render_copy_settings_prepare()
split = layout.split(0.75)
- split.template_list(cp_sett, "affected_settings", cp_sett, "aff_sett_idx",
+ split.template_list(cp_sett, "affected_settings", cp_sett,
+ "aff_sett_idx",
prop_list="template_list_controls", rows=6)
col = split.column()
- all_set = {sett.strid for sett in cp_sett.affected_settings if sett.copy}
+ all_set = {sett.strid for sett in cp_sett.affected_settings \
+ if sett.copy}
for p in presets.presets:
label = ""
if p.elements & all_set == p.elements:
label = "Clear {}".format(p.ui_name)
else:
label = "Set {}".format(p.ui_name)
- col.operator("scene.render_copy_settings_preset", text=label, ).presets = {p.rna_enum[0]}
+ col.operator("scene.render_copy_settings_preset",
+ text=label).presets = {p.rna_enum[0]}
layout.prop(cp_sett, "filter_scene")
if len(cp_sett.allowed_scenes):
layout.label("Affected Scenes:")
# XXX Unfortunately, there can only be one template_list per panel…
-# layout.template_list(cp_sett, "allowed_scenes", cp_sett, "allw_scenes_idx", rows=5)
col = layout.column_flow(columns=0)
for i, prop in enumerate(cp_sett.allowed_scenes):
col.prop(prop, "allowed", toggle=True, text=prop.name)
diff --git a/render_copy_settings/presets.py b/render_copy_settings/presets.py
index 7ba6ff4e..d1037d39 100644
--- a/render_copy_settings/presets.py
+++ b/render_copy_settings/presets.py
@@ -18,6 +18,7 @@
# <pep8 compliant>
+
class CopyPreset(object):
def __init__(self, ui_name, rna_enum, elements):
self.ui_name = ui_name
@@ -26,21 +27,25 @@ class CopyPreset(object):
presets = (CopyPreset("Resolution",
- ("resolution", "Render Resolution", "Render resolution and aspect ratio settings"),
- {"resolution_x", "resolution_y", "pixel_aspect_x", "pixel_aspect_y"}),
+ ("resolution", "Render Resolution",
+ "Render resolution and aspect ratio settings"),
+ {"resolution_x", "resolution_y",
+ "pixel_aspect_x", "pixel_aspect_y"}),
CopyPreset("Scale",
- ("scale", "Render Scale", "The “Render Scale” setting."),
+ ("scale", "Render Scale", "The “Render Scale” setting"),
{"resolution_percentage"}),
CopyPreset("OSA",
- ("osa", "Render OSA", "The OSA toggle and sample settings."),
+ ("osa", "Render OSA",
+ "The OSA toggle and sample settings"),
{"use_antialiasing", "antialiasing_samples"}),
CopyPreset("Threads",
- ("threads", "Render Threads", "The thread mode and number settings."),
+ ("threads", "Render Threads",
+ "The thread mode and number settings"),
{"threads_mode", "threads"}),
CopyPreset("Fields",
- ("fields", "Render Fields", "The Fields settings."),
+ ("fields", "Render Fields", "The Fields settings"),
{"use_fields", "field_order", "use_fields_still"}),
CopyPreset("Stamp",
- ("stamp", "Render Stamp", "The Stamp toggle."),
+ ("stamp", "Render Stamp", "The Stamp toggle"),
{"use_stamp"})
)