diff options
author | Ton Roosendaal <ton@blender.org> | 2003-10-06 00:17:37 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2003-10-06 00:17:37 +0400 |
commit | a082b8e1b0d3c25d8bda1ee815863b12a26c8bb7 (patch) | |
tree | 8a8418b12c94a874fa10d706b7197d94948d3888 /source/blender/src/editscreen.c | |
parent | 1bbf616b59ebc5f0292ade9bea0718d6d5bd34f3 (diff) |
- fixed some of the weird placement of buttons when changing window size
- home key buttonswin had error
- fixed bug: split area with tabbed panels didnt work correct
Diffstat (limited to 'source/blender/src/editscreen.c')
-rw-r--r-- | source/blender/src/editscreen.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/src/editscreen.c b/source/blender/src/editscreen.c index b6081a8226b..26c751edff7 100644 --- a/source/blender/src/editscreen.c +++ b/source/blender/src/editscreen.c @@ -1442,6 +1442,7 @@ static void del_area(ScrArea *sa) /* sa2 to sa1 */ static void copy_areadata(ScrArea *sa1, ScrArea *sa2) { + Panel *pa1, *pa2, *patab; sa1->headertype= sa2->headertype; sa1->spacetype= sa2->spacetype; @@ -1452,6 +1453,23 @@ static void copy_areadata(ScrArea *sa1, ScrArea *sa2) BLI_freelistN(&sa1->panels); duplicatelist(&sa1->panels, &sa2->panels); + + /* copy pointers */ + pa1= sa1->panels.first; + while(pa1) { + + patab= sa1->panels.first; + pa2= sa2->panels.first; + while(patab) { + if( pa1->paneltab == pa2) { + pa1->paneltab = patab; + break; + } + patab= patab->next; + pa2= pa2->next; + } + pa1= pa1->next; + } } static ScrArea *screen_addarea(bScreen *sc, ScrVert *v1, ScrVert *v2, ScrVert *v3, ScrVert *v4, short headertype, short spacetype) |