This operator (the snowflake icon, beside the pushdown button on the Action Editor header) adds the currently active action to the NLA stack in a muted track, then creates + loads a new action ready to be populated with new keyframes. Since the NLA is being used to hang on to all the actions here, no actions are getting lost. Usage Notes (there will be some additional tweaks to make this nicer): * To preview different actions that have been "stashed", simply click the "Solo" toggle for the track containing the action in question. Playing back the NLA will now show the stashed track * To edit a previously stashed action - simply enter tweakmode on it in the NLA while the "Solo" toggle is enabled. Todo: * Add some more operators here to polish up the Action <-> NLA bridge to make the layered and stash workflows smoother. Examples include some tools to easily switch between the different actions layers in the stack, as well as making it easier to get out of tweakmode (and sync up the action lengths) * Review and cleanup the behaviour of the "new" operator here to avoid the old problems that users were running into * After the next release - Implement the full Action Libraries functionality, with ways to bridge the stashed strips over to a full-blown library.
50 lines
1.4 KiB
Python
50 lines
1.4 KiB
Python
#!/usr/bin/env python
|
|
#
|
|
# ***** BEGIN GPL LICENSE BLOCK *****
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation; either version 2
|
|
# of the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
#
|
|
# The Original Code is Copyright (C) 2006, Blender Foundation
|
|
# All rights reserved.
|
|
#
|
|
# The Original Code is: all of this file.
|
|
#
|
|
# Contributor(s): Nathan Letwory.
|
|
#
|
|
# ***** END GPL LICENSE BLOCK *****
|
|
|
|
Import ('env')
|
|
|
|
sources = env.Glob('*.c')
|
|
|
|
defs = env['BF_GL_DEFINITIONS']
|
|
|
|
incs = [
|
|
'#/intern/guardedalloc',
|
|
env['BF_GLEW_INC'],
|
|
'#/intern/glew-mx',
|
|
'../include',
|
|
'../../blenkernel',
|
|
'../../blenlib',
|
|
'../../blenfont',
|
|
'../../gpu',
|
|
'../../makesdna',
|
|
'../../makesrna',
|
|
'../../windowmanager',
|
|
]
|
|
incs = ' '.join(incs)
|
|
|
|
env.BlenderLib ( 'bf_editors_space_action', sources, Split(incs), defs, libtype=['core'], priority=[40] )
|