Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import bpy
- bl_info = {
- # modified version of zeffiis quick script runner, see https://gist.github.com/zeffii/2b488961226ee1ecefcf
- "name": "Sequencer Script Runner",
- "author": "Samoth",
- "version": (0, 1, 0),
- "blender": (2, 7, 6),
- "location": "Sequencer, Properties Panel (right)",
- "category": "Sequencer"
- }
- class GlobalScriptRunner(bpy.types.Operator):
- bl_idname = "sequencer.script_runner"
- bl_label = "Sequencer Script Runner"
- def execute(self, context):
- # or put own script here...
- textblock_name = context.scene.global_script_to_run
- textblock = bpy.data.texts.get(textblock_name)
- if textblock:
- textblock_as_string = textblock.as_string()
- exec(textblock_as_string)
- return {'FINISHED'}
- else:
- return {'CANCELLED'}
- class ScriptRunnerPanel(bpy.types.Panel):
- """Creates a Panel in the Sequencer Properties Panel"""
- bl_label = "Script Runner"
- bl_idname = "SCENE_PT_script_runner"
- bl_space_type = 'SEQUENCE_EDITOR'
- bl_region_type = 'UI'
- def draw(self, context):
- layout = self.layout
- layout.label('Script to run from Shortcut')
- layout.prop_search(context.scene, "global_script_to_run", bpy.data, "texts")
- def register():
- bpy.types.Scene.global_script_to_run = bpy.props.StringProperty()
- bpy.utils.register_class(GlobalScriptRunner)
- bpy.utils.register_class(ScriptRunnerPanel)
- def unregister():
- bpy.utils.unregister_class(GlobalScriptRunner)
- bpy.utils.unregister_class(ScriptRunnerPanel)
- del bpy.types.Scene.global_script_to_run
Add Comment
Please, Sign In to add comment