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

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2007-05-07 15:59:43 +0400
committerJoshua Leung <aligorith@gmail.com>2007-05-07 15:59:43 +0400
commit147cbe93c243db447ab1e5a5585a8e987c25df74 (patch)
tree30d9a2779e798e020b79a34cc73d9f7ea572242c /source/blender/src/drawaction.c
parentc006be19296cb434054b257ffe2b556470fd261c (diff)
== Action Editor - Bugfix #6660 ==
When trying to expand the IPO-curves for Shapekey Action Channels, Blender crashed due to that being a previously un-handled case. For some reason, the names of IPO curve channels are still not drawing on some machines. I've also disabled the display of shapekey channels when there is an action as the two used to overlap and muck up the drawing matrices of each other.
Diffstat (limited to 'source/blender/src/drawaction.c')
-rw-r--r--source/blender/src/drawaction.c26
1 files changed, 15 insertions, 11 deletions
diff --git a/source/blender/src/drawaction.c b/source/blender/src/drawaction.c
index cf76d69f60b..9ae34d59226 100644
--- a/source/blender/src/drawaction.c
+++ b/source/blender/src/drawaction.c
@@ -599,10 +599,10 @@ static void draw_channel_names(void)
*/
draw_action_channel_names(act);
}
- if ( (key = get_action_mesh_key()) ) {
+ else if ( (key = get_action_mesh_key()) ) {
/* if there is a mesh selected with rvk's,
- * then draw the RVK names
- */
+ * then draw the RVK names
+ */
draw_action_mesh_names(key);
}
@@ -953,7 +953,7 @@ void drawactionspace(ScrArea *sa, void *spacedata)
* oughta fix it
*/
- if (key) {
+ if (!act && key) {
if (G.v2d->cur.ymin < -CHANNELHEIGHT)
G.v2d->cur.ymin = -CHANNELHEIGHT;
@@ -1007,9 +1007,10 @@ void drawactionspace(ScrArea *sa, void *spacedata)
check_action_context(G.saction);
/* Draw channel strips */
- draw_channel_strips(G.saction);
-
- if (key) {
+ if (act) {
+ draw_channel_strips(G.saction);
+ }
+ else if (key) {
/* if there is a mesh with rvk's selected,
* then draw the key frames in the action window
*/
@@ -1048,15 +1049,18 @@ void drawactionspace(ScrArea *sa, void *spacedata)
draw_channel_names();
if(sa->winx > 50 + NAMEWIDTH + SLIDERWIDTH) {
- if (key) {
+ if (act) {
+ /* if there is an action, draw sliders for its
+ * ipo-curve channels in the action window
+ */
+ action_icu_buts(G.saction);
+ }
+ else if (key) {
/* if there is a mesh with rvk's selected,
* then draw the key frames in the action window
*/
meshactionbuts(G.saction, OBACT, key);
}
- else if (act) {
- action_icu_buts(G.saction);
- }
}
}