1
1

Cleanup: grease pencil app-template versioning

- Remove check for screens being None as this would raise an error.
- Replace loop over `area.spaces` with `area.spaces.active`.
- Loop over grease pencil data directly instead of accessing
  through the scenes objects.
- Split versioning into functions.
- Use `update_factory_startup_*` prefix for function names
  as this isn't versioning existing files.
This commit is contained in:
2021-08-09 12:36:19 +10:00
parent 3ea6cf7d41
commit ff9bc901f4
2 changed files with 36 additions and 41 deletions

View File

@@ -21,48 +21,43 @@
import bpy
from bpy.app.handlers import persistent
def update_factory_startup_screens():
# 2D Animation.
screen = bpy.data.screens["2D Animation"]
for area in screen.areas:
if area.type == 'PROPERTIES':
# Set Tool settings as default in properties panel.
space = area.spaces.active
space.context = 'TOOL'
elif area.type == 'DOPESHEET_EDITOR':
# Open sidebar in Dopesheet.
space = area.spaces.active
space.show_region_ui = True
# 2D Full Canvas.
screen = bpy.data.screens["2D Full Canvas"]
for area in screen.areas:
if area.type == 'VIEW_3D':
space = area.spaces.active
space.shading.type = 'MATERIAL'
space.shading.use_scene_world = True
def update_factory_startup_scenes():
for scene in bpy.data.scenes:
scene.tool_settings.use_keyframe_insert_auto = True
def update_factory_startup_grease_pencils():
for gpd in bpy.data.grease_pencils:
gpd.onion_keyframe_type = 'ALL'
@persistent
def load_handler(_):
import bpy
# 2D Animation
screen = bpy.data.screens['2D Animation']
if screen:
for area in screen.areas:
# Set Tool settings as default in properties panel.
if area.type == 'PROPERTIES':
for space in area.spaces:
if space.type != 'PROPERTIES':
continue
space.context = 'TOOL'
# Open sidebar in Dopesheet.
elif area.type == 'DOPESHEET_EDITOR':
for space in area.spaces:
if space.type != 'DOPESHEET_EDITOR':
continue
space.show_region_ui = True
# 2D Full Canvas
screen = bpy.data.screens['2D Full Canvas']
if screen:
for area in screen.areas:
if area.type == 'VIEW_3D':
for space in area.spaces:
if space.type != 'VIEW_3D':
continue
space.shading.type = 'MATERIAL'
space.shading.use_scene_world = True
# Grease pencil object
scene = bpy.data.scenes[0]
if scene:
scene.tool_settings.use_keyframe_insert_auto = True
for ob in scene.objects:
if ob.type == 'GPENCIL':
gpd = ob.data
gpd.onion_keyframe_type = 'ALL'
update_factory_startup_screens()
update_factory_startup_scenes()
update_factory_startup_grease_pencils()
def register():

View File

@@ -20,7 +20,7 @@ import bpy
from bpy.app.handlers import persistent
def do_version_file_browser():
def update_factory_startup_screens():
screen = bpy.data.screens["Video Editing"]
for area in screen.areas:
if area.type == 'FILE_BROWSER':
@@ -31,7 +31,7 @@ def do_version_file_browser():
@persistent
def load_handler(_):
do_version_file_browser()
update_factory_startup_screens()
def register():