diff options
author | Joshua Leung <aligorith@gmail.com> | 2008-02-06 14:10:34 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2008-02-06 14:10:34 +0300 |
commit | 14ea52bdd8ecdcc0d7af8ec1b49c51779fc1a085 (patch) | |
tree | 51db2ae7b75389d23b761b9ca832e19c86b2ca30 /source/blender/src/drawarmature.c | |
parent | f05778a980b823f556b94dd2ff7b37564a0d4437 (diff) |
Bugfixes:
* Action Editor "Open/Close Level" now works with Action Groups. Groups have priority over Action Channels for collapsing/expanding.
* Custom bone shapes using the new 'wire' option, were drawing with the wrong wireframe colour at times (i.e. when out of posemode, this happened quite often).
* Fixed/added a few comments in various places
Diffstat (limited to 'source/blender/src/drawarmature.c')
-rw-r--r-- | source/blender/src/drawarmature.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/source/blender/src/drawarmature.c b/source/blender/src/drawarmature.c index 67c598f993f..18cb05dbdd0 100644 --- a/source/blender/src/drawarmature.c +++ b/source/blender/src/drawarmature.c @@ -1589,9 +1589,15 @@ static void draw_pose_channels(Base *base, int dt) set_pchan_colorset(ob, pchan); if ((pchan->custom) && !(arm->flag & ARM_NO_CUSTOM)) { - /* BONE_DRAWWIRE case is here too, as sometimes wire overlay won't be done */ - if (pchan->bone->flag & BONE_DRAWWIRE) - draw_custom_bone(pchan->custom, OB_WIRE, arm->flag, flag, index, bone->length); + /* BONE_DRAWWIRE case is here too, as wire overlay won't be done when in Object Mode + * It's a bit of a hack, and we make sure TH_WIRE is used (just in case). + */ + if (pchan->bone->flag & BONE_DRAWWIRE) { + if ((arm->flag & ARM_POSEMODE) == 0) { + BIF_ThemeColor(TH_WIRE); + draw_custom_bone(pchan->custom, OB_WIRE, arm->flag, flag, index, bone->length); + } + } else draw_custom_bone(pchan->custom, OB_SOLID, arm->flag, flag, index, bone->length); } @@ -1695,8 +1701,9 @@ static void draw_pose_channels(Base *base, int dt) set_pchan_colorset(ob, pchan); if ((pchan->custom) && !(arm->flag & ARM_NO_CUSTOM)) { - if ((dt < OB_SOLID) || (pchan->bone->flag & BONE_DRAWWIRE)) + if ((dt < OB_SOLID) || (pchan->bone->flag & BONE_DRAWWIRE)) { draw_custom_bone(pchan->custom, OB_WIRE, arm->flag, flag, index, bone->length); + } } else if (arm->drawtype==ARM_ENVELOPE) { if (dt < OB_SOLID) |