From efdd4894e93748e7305d03ca6f32deb869cc2862 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Thu, 21 Nov 2013 01:13:30 +1300 Subject: NLA Channel Drawing Refactor: Remove rest of old drawing code for NLA Track channels NLA Track drawing has now been ported over to use the UI widgets like the rest of the anim channels do in the DopeSheet and Graph Editors. The main benefit of this for users is that these buttons will now show tooltips when you hover over them. Hopefully this will help make the "solo" buttons more discoverable. I've decided to postpone porting the "Action Line" channels to the widget system for now, since there are quite a few more issues there which need quite a bit more time to work through. --- .../editors/animation/anim_channels_defines.c | 4 ++- source/blender/editors/space_nla/nla_draw.c | 35 ++-------------------- 2 files changed, 6 insertions(+), 33 deletions(-) (limited to 'source/blender/editors') diff --git a/source/blender/editors/animation/anim_channels_defines.c b/source/blender/editors/animation/anim_channels_defines.c index 7b656da3de3..1d9022e463b 100644 --- a/source/blender/editors/animation/anim_channels_defines.c +++ b/source/blender/editors/animation/anim_channels_defines.c @@ -2972,7 +2972,9 @@ static void ANIM_init_channel_typeinfo_data(void) animchannelTypeInfo[type++] = &ACF_MASKLAYER; /* Mask Layer */ animchannelTypeInfo[type++] = &ACF_NLATRACK; /* NLA Track */ - animchannelTypeInfo[type++] = &ACF_NLAACTION; /* NLA Action */ + + // TODO: this channel type still hasn't been ported over yet, since it requires special attention + animchannelTypeInfo[type++] = NULL; /* NLA Action */ } } diff --git a/source/blender/editors/space_nla/nla_draw.c b/source/blender/editors/space_nla/nla_draw.c index c30862fb156..c9a86547984 100644 --- a/source/blender/editors/space_nla/nla_draw.c +++ b/source/blender/editors/space_nla/nla_draw.c @@ -638,8 +638,8 @@ static void draw_nla_channel_list_gl(bAnimContext *ac, ListBase *anim_data, View { AnimData *adt = ale->adt; - short indent = 0, offset = 0, sel = 0, group = 0, nonSolo = 0; - int expand = -1, protect = -1, special = -1, mute = -1; + short indent = 0, offset = 0, sel = 0, group = 0; + int special = -1; char name[128]; short do_draw = FALSE; @@ -660,7 +660,7 @@ static void draw_nla_channel_list_gl(bAnimContext *ac, ListBase *anim_data, View break; } default: /* handled by standard channel-drawing API */ - // draw backdrops only... + /* (draw backdrops only...) */ ANIM_channel_draw(ac, ale, yminc, ymaxc); break; } @@ -743,25 +743,7 @@ static void draw_nla_channel_list_gl(bAnimContext *ac, ListBase *anim_data, View /* clear group value, otherwise we cause errors... */ group = 0; } - else { - /* NLA tracks - darker color if not solo track when we're showing solo */ - UI_ThemeColorShade(TH_HEADER, ((nonSolo == 0) ? 20 : -20)); - - indent += group; - offset += 0.35f * U.widget_unit * indent; - glBegin(GL_QUADS); - glVertex2f(x + offset, yminc); - glVertex2f(x + offset, ymaxc); - glVertex2f((float)v2d->cur.xmax, ymaxc); - glVertex2f((float)v2d->cur.xmax, yminc); - glEnd(); - } - /* draw expand/collapse triangle */ - if (expand > 0) { - UI_icon_draw(x + offset, ydatac, expand); - offset += 0.85f * U.widget_unit; - } /* draw special icon indicating certain data-types */ if (special > -1) { @@ -786,17 +768,6 @@ static void draw_nla_channel_list_gl(bAnimContext *ac, ListBase *anim_data, View glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable(GL_BLEND); - /* draw protect 'lock' */ - if (protect > -1) { - offset = 0.8f * U.widget_unit; - UI_icon_draw((float)(v2d->cur.xmax - offset), ydatac, protect); - } - - /* draw mute 'eye' */ - if (mute > -1) { - offset += 0.8f * U.widget_unit; - UI_icon_draw((float)(v2d->cur.xmax - offset), ydatac, mute); - } /* draw NLA-action line 'status-icons' - only when there's an action */ if ((ale->type == ANIMTYPE_NLAACTION) && (ale->data)) { -- cgit v1.2.3