Commit Graph

129 Commits

Author SHA1 Message Date
Joshua Leung
2058505da4 Bugfix T43851: Creating a new action after stashing crashes blender 2015-03-02 05:05:04 +13:00
Joshua Leung
46ad5b6f67 Tweaks for NLA and newly added Action Stash Tracks
* Do not make Action Stash Tracks or their strips active/selected
* Lock the track to prevent accidental editing/adding of other strips

* Prevent strips from being added into locked tracks by the pushdown operator.
  This is mainly to prevent pushdown actions from getting into the stash tracks.
2015-03-01 02:34:53 +13:00
Joshua Leung
13a0dce51c Action Stashing: Don't allow an action to get stashed more than once 2015-03-01 02:34:50 +13:00
Joshua Leung
b16fbabd61 Reshuffle code 2015-03-01 02:34:49 +13:00
Joshua Leung
8d2fc99618 Code Cleanup: Separate out the logic for stashing actions into a separate function 2015-03-01 02:34:46 +13:00
Joshua Leung
7af4690295 NLA: Auto-Blends option is no longer enabled on all newly added strips
This may be put back again later, but currently, this is a bit too trigger-happy
to have it on. It tends to mess up results more than it helps.
2015-03-01 02:34:43 +13:00
Campbell Barton
aab4f2b762 cleanup: redundant casts & const cast correctness 2015-01-01 23:42:28 +11:00
Bastien Montagne
20a1778148 Cleanup: more int->bool. 2014-12-01 17:11:55 +01:00
Campbell Barton
7d040d2a08 Cleanup: use BLI_listbase_*** prefix for count,sort,sort_r 2014-11-16 13:57:58 +01:00
Campbell Barton
cc28e02a85 Cleanup: replace int cast with floorf when comparing time 2014-08-04 10:22:45 +10:00
Campbell Barton
00b29156e0 Defines: replace ELEM3-16 with ELEM(...), that can take varargs 2014-07-20 01:33:40 +10:00
Campbell Barton
6c721a86ff Cleanup: Use doxy for more structured comments 2014-05-29 21:17:48 +10:00
Joshua Leung
68c3b6350a NLA Editor: Duplicate/Duplicate Linked
This commit changes the default strip duplication behaviour (Shift-D) so that it will
create a copy of whatever action it uses. Previously, it was very hard, if not impossible
in some cases to create a new copy of an action to start working on in the NLA.

If you want the old behaviour, you'll need to use ALt-D (Linked Duplicates).

(Note: Although the new Shift-D may not be so optimal in all cases, I've decided to go
with this version since it aligns better with the way this works for objects. Doing the
opposite for NLA would just have added to the confusion)
2014-04-29 01:59:41 +12:00
Campbell Barton
a15b3c4d11 Code cleanup: use bool 2014-04-11 11:33:29 +10:00
Campbell Barton
b3afbcab8f ListBase API: add utility api funcs for clearing and checking empty 2014-02-08 06:24:05 +11:00
Campbell Barton
37026b12ec Code cleanup: use bool for static methods 2014-02-05 22:36:15 +11:00
Campbell Barton
d900f5be55 Code cleanup: use bools where possible 2014-02-03 19:35:44 +11:00
Joshua Leung
2aab2d97de Bugfix [#35668] Tooltip for Euler Discontinuity Filter was misleading
The tooltip seemed to hint that this tool is able to resolve all manner of
gimble-lock situations by untangling the curves (i.e. performing some kind of
equivalent-angles resolution, keeping in mind the nearest situations nearby).
However, this tool currently only performs corrections for the most basic case
when large jump+flip discontinuity artifacts appear in euler rotation curves as
a result of rotation values getting clipped to +/- 180 degrees, which arises
when these rotation curves are the result of baking some physics sim or so.

(Also, fixed an unrelated "replace-all" typo in a comment)
2013-06-12 12:32:07 +00:00
Campbell Barton
5e347c4f71 code cleanup: typos 2013-05-26 12:02:29 +00:00
Joshua Leung
eda757d4c8 Bugfix [#34645] NlaStrip Tweak Mode - No automatic action length sync on exit
Originally I was thinking of not restoring this functionality (see report for
further details). However, upon rechecking the code, it seems that there was
actually a define set up for this already, but which wasn't actually hooked up
yet. So, this commit basically exposes this option ("Sync Length") which ensures
that when exiting tweak mode on a NLA Strip, that strip instance (and not other
users of the same action) will be updated to include the newly added keyframes.
This option is not enabled by default, and shouldn't really be needed in most
("intended") workflows.
2013-04-26 13:42:55 +00:00
Bastien Montagne
6926596174 More new data names translation (most cases should be covered now).
Also done a few cleanup here and there...
2013-03-25 08:29:06 +00:00
Campbell Barton
c36f20a7d2 style cleanup 2013-03-08 04:00:06 +00:00
Campbell Barton
0d5b028d43 patch [#34103] use boolean in path functions and add comments.
path_util_1.patch from Lawrence D'Oliveiro (ldo)
2013-03-04 19:27:51 +00:00
Campbell Barton
296444e1dc style cleanup: some warnigs & spelling. 2013-02-06 14:02:19 +00:00
Campbell Barton
aeba4950c3 style cleanup 2012-10-27 10:42:28 +00:00
Campbell Barton
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
Campbell Barton
ed0489bb6e style cleanup: also spelling 2012-08-24 23:22:34 +00:00
Campbell Barton
cfb7aee017 style cleanup 2012-07-07 22:51:57 +00:00
Campbell Barton
84bf3e48c0 style cleanup: use c style comments in C code 2012-07-06 23:56:59 +00:00
Bastien Montagne
558721ab59 More spell checking. 2012-07-04 15:04:38 +00:00
Nicholas Bishop
ed33320e3f Code cleanup: simplify standard GHash creation.
Added four new functions as shortcuts to creating GHashes that use the
standard ptr/str/int/pair hash and compare functions.

GHash *BLI_ghash_ptr_new(const char *info);
GHash *BLI_ghash_str_new(const char *info);
GHash *BLI_ghash_int_new(const char *info);
GHash *BLI_ghash_pair_new(const char *info);

Replaced almost all occurrences of BLI_ghash_new() with one of the
above functions.
2012-05-16 00:51:36 +00:00
Campbell Barton
53ee7908d6 style cleanup: whitespace 2012-05-12 16:11:34 +00:00
Campbell Barton
343edf2722 style cleanup: function calls & whitespace. 2012-04-29 17:11:40 +00:00
Campbell Barton
b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
Campbell Barton
5b88712ff9 move debug flag into its own global var (G.debug), split up debug options.
--debug
  --debug-ffmpeg
  --debug-python
  --debug-events
  --debug-wm

This makes debug output easier to read - event debug prints would flood output too much before.

For convenience:
  --debug-all turns all debug flags on (works as --debug did before).

also removed some redundant whitespace in debug prints and prefix some prints with __func__ to give some context.
2012-03-31 00:59:17 +00:00
Campbell Barton
6faeac9fe2 style cleanup: add braces around checks - 'if ELEM() {...}', confuses some parsers that done expand macros. 2012-03-25 22:35:18 +00:00
Campbell Barton
31d2ee9bf7 style cleanup, brackets in else/if, some indentation. 2012-03-06 18:40:15 +00:00
Campbell Barton
7bbf4b7831 style cleanup
- spelling - turns out we had tessellation spelt wrong all over.
- use \directive for doxy (not @directive)
- remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
2012-03-02 16:05:54 +00:00
Campbell Barton
ea13ec1699 Spelling Cleanup 2012-03-01 12:20:18 +00:00
Campbell Barton
47c373c7a9 style cleanup (mostly whitespace) 2012-02-27 10:35:39 +00:00
Joshua Leung
4ec5a9a42c Bugfix [#29869] NLA editor keeps resetting my extrapolation mode every time I
edit a strip in the timeline

Tweaked the behaviour of the overwritting of extrapolation mode so that it is
less destructive when the problems it sets out to fix aren't likely to occur
(namely a top strip blocking everything below it due to extend backwards).
2012-01-22 04:39:33 +00:00
Joshua Leung
7d13619990 Bugfix [#28468] Cannot enter "Tweak mode" on mutiple objects at the same time,
though it initially works

Problem was that in the past it was possible to have multiple strips/tracks
tagged as "active", but now after getting a correct implementation, we can no
longer have that, and thus entering Tweak Mode only works on the last selected
strip.

However this is problematic in cases when you want to tweak the keyframes of
several objects (which may only have a single strip each) in order to get them
to line up with each other. This hack caters for this case (selecting multiple
strips from the same AnimData block is still impossible and insane/illogical and
is not allowed).

This may have implications for some future tools which make assumptions about
certain aspects of NLA state. However, it shouldn't cause too many problems
(hopefully ;)
2012-01-22 04:30:52 +00:00
Campbell Barton
4924abaad6 replace fabs with fabsf where both input and output are floats. 2011-11-19 01:10:05 +00:00
Campbell Barton
094c9799f9 quiet -Wdouble-promotion warnings 2011-11-11 12:00:08 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Campbell Barton
2bd9519e39 BLI_ghash.h was including BLI_blenlib.h, remove from ghash header and include in each file 2011-10-20 13:50:24 +00:00
Campbell Barton
54adf3de62 fix bad svn ID tags 2011-10-10 09:44:14 +00:00
Campbell Barton
bc40f11093 header cleanup (no functional changes) 2011-10-10 09:38:02 +00:00
Campbell Barton
8714fb7019 replace sprintf with strcpy where no formatting is done and return value isn't used. 2011-10-09 06:03:38 +00:00
Campbell Barton
dc7f56455c fix for error in recent commit, when audaspace is enabled 2011-09-02 04:34:58 +00:00