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:
authorAlexander Ewering <blender@instinctive.de>2003-07-18 19:50:33 +0400
committerAlexander Ewering <blender@instinctive.de>2003-07-18 19:50:33 +0400
commita65ce19175fde3034d4402d8a394d26fcd7907dc (patch)
treed38587196ed3fa9c2176c098900d7c275a8a42ff /source/blender/src/editgroup.c
parentc2f92ace7963f92be0c96de24317cd5f2beb1008 (diff)
Added "Group selection" menu (SHIFT-G), which offers the following options:
1 - Children 2 - Immediate Children 3 - Parent 4 - Objects on shared layers 1: Selects all direct children of the active object 2: Select all children, children's children etc. of the active object 3: Makes the parent of the current object active, and deselects the active object 4: Selects all objects that share at least one layer with the active object Useful for stepping through object hierarchies and for quickly selecting objects belonging together. See my message on bf-committers as well.
Diffstat (limited to 'source/blender/src/editgroup.c')
-rw-r--r--source/blender/src/editgroup.c81
1 files changed, 0 insertions, 81 deletions
diff --git a/source/blender/src/editgroup.c b/source/blender/src/editgroup.c
index 35f8fa6210a..2a43f6e6f47 100644
--- a/source/blender/src/editgroup.c
+++ b/source/blender/src/editgroup.c
@@ -146,87 +146,6 @@ void rem_selected_from_group(void)
allqueue(REDRAWBUTSANIM, 0);
}
-void group_menu(void)
-{
- Base *base;
- GroupObject *go;
- GroupKey *gk;
- short nr, len;
- char *str, tstr[40];
-
- if(G.scene->group==NULL) return;
-
- /* make menu string */
- len= 60;
- gk= G.scene->group->gkey.first;
- while(gk) {
- len+= 36;
- gk= gk->next;
- }
-
- str= MEM_mallocN(len, "groupmenu");
- strcpy(str, "Group options%t|Select members %x1");
-
- if(G.scene->group->active)
- strcat(str, "|Overwrite active key %x2|%l");
-
- nr= 3;
- gk= G.scene->group->gkey.first;
- while(gk) {
- sprintf(tstr, "|Load: %s %%x%d", gk->name, nr++);
- strcat(str, tstr);
- gk= gk->next;
- }
-
- /* here we go */
-
- nr= pupmenu(str);
- MEM_freeN(str);
-
- if(nr==1) {
- go= G.scene->group->gobject.first;
- while(go) {
- go->ob->flag |= SELECT;
- go= go->next;
- }
-
- /* nasty thing... that should be solved someday */
- base= FIRSTBASE;
- while(base) {
- base->flag= base->object->flag;
- base= base->next;
- }
-
- }
- else if(nr==2) {
- go= G.scene->group->gobject.first;
- while(go) {
- add_object_key(go, G.scene->group->active);
- go= go->next;
- }
-
- }
- else if(nr>2) {
- nr-= 2;
- gk= G.scene->group->gkey.first;
- while(gk) {
- nr--;
- if(nr==0) break;
- gk= gk->next;
- }
-
- G.scene->group->active= gk;
- set_group_key(G.scene->group);
-
- }
-
- allqueue(REDRAWVIEW3D, 0);
- allqueue(REDRAWBUTSANIM, 0);
- allspace(REMAKEIPO, 0);
- allqueue(REDRAWIPO, 0);
-}
-
-
void prev_group_key(Group *group)
{
GroupKey *gk= group->active;