diff options
author | Ton Roosendaal <ton@blender.org> | 2006-11-11 19:45:17 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-11-11 19:45:17 +0300 |
commit | feb210f08ebd5d6283624996883719b00fa590eb (patch) | |
tree | f08814d79d54c87810a320a0f6f101ba5e1a1175 /source/blender/src/outliner.c | |
parent | 97f892b86b9b31e8165c27c698da7996dfd2d0a2 (diff) |
Experimental feature, especially for the animation department:
THE OBJECT PROXY
Or simple said; local control of referenced data from libraries.
Having library files with references is a very common studio setup, and
Blender did do quite well in that area. Were it not that for character
setups it was impossible to use still.
This commit will enable a full rig+character to remain in the library,
and still have - under strict control - local access for animation edits.
Full log:
http://www.blender3d.org/cms/Proxy_Objects.824.0.html
Diffstat (limited to 'source/blender/src/outliner.c')
-rw-r--r-- | source/blender/src/outliner.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/src/outliner.c b/source/blender/src/outliner.c index 1f15bb62205..01eb93c9f60 100644 --- a/source/blender/src/outliner.c +++ b/source/blender/src/outliner.c @@ -432,6 +432,9 @@ static TreeElement *outliner_add_element(SpaceOops *soops, ListBase *lb, void *i { Object *ob= (Object *)id; + if(ob->proxy && ob->id.lib==NULL) + outliner_add_element(soops, &te->subtree, ob->proxy, te, TSE_PROXY, 0); + outliner_add_element(soops, &te->subtree, ob->data, te, 0, 0); if(ob->pose) { @@ -566,7 +569,7 @@ static TreeElement *outliner_add_element(SpaceOops *soops, ListBase *lb, void *i if(ob->dup_group) outliner_add_element(soops, &te->subtree, ob->dup_group, te, 0, 0); - + if(ob->nlastrips.first) { bActionStrip *strip; TreeElement *ten; @@ -2628,6 +2631,8 @@ static void tselem_draw_icon(float x, float y, TreeStoreElem *tselem, TreeElemen BIF_icon_draw(x, y, ICON_ARMATURE_DEHLT); break; case TSE_POSE_CHANNEL: BIF_icon_draw(x, y, ICON_WPAINT_DEHLT); break; + case TSE_PROXY: + BIF_icon_draw(x, y, ICON_GHOST); break; #ifdef WITH_VERSE case ID_VS: case ID_MS: |