diff -r ceb4532eae34 -r 910ba9fab728 branchobj.cpp --- a/branchobj.cpp Fri Dec 08 20:18:58 2006 +0000 +++ b/branchobj.cpp Thu Dec 14 17:01:44 2006 +0000 @@ -8,19 +8,6 @@ extern FlagRowObj *standardFlagsDefault; -/* FIXME not needed any longer in QT4 -int BranchObjPointrList::compareItems ( Q3PtrCollection::Item i, Q3PtrCollection::Item j) -{ - // Make sure PtrList::find works - if (i==j) return 0; - - if ( ((BranchObj*)(i))->angle > ((BranchObj*)(j))->angle ) - return 1; - else - return -1; -} -*/ - ///////////////////////////////////////////////////////////////// // BranchObj ///////////////////////////////////////////////////////////////// @@ -138,6 +125,14 @@ delete branch.takeFirst(); } +bool isAbove (BranchObj* a, BranchObj *b) +{ + if (a->angle < b->angle) + return true; + else + return false; +} + int BranchObj::getNum() { if (parObj) @@ -962,11 +957,10 @@ void BranchObj::removeFloatImage (FloatImageObj *fio) { int i=floatimage.indexOf (fio); - if (i!=-1) floatimage.takeAt (i); + if (i>-1) delete (floatimage.takeAt (i)); calcBBoxSize(); positionBBox(); requestReposition(); - // FIMXE undo needed } void BranchObj::savePosInAngle () @@ -1047,7 +1041,7 @@ // Add new bo and resort branches BranchObj *newbo=addBranch (); newbo->angle=pos-0.5; - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); return newbo; } @@ -1057,7 +1051,7 @@ // Add new bo and resort branches bo->angle=pos-0.5; BranchObj *newbo=addBranch (bo); - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); return newbo; } @@ -1072,7 +1066,7 @@ bo->setDefAttr (MovedBranch); if (scrolled) tmpUnscroll(); setLastSelectedBranch (bo); - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); return bo; } @@ -1176,7 +1170,7 @@ { // -1 if bo1 not found branch.at(i)->angle--; branch.at(i-1)->angle++; - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); return branch.at(i); } else return NULL; @@ -1202,7 +1196,7 @@ j = i+1; branch.at(i)->angle++; branch.at(j)->angle--; - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); return branch.at(i); } else return NULL; @@ -1345,7 +1339,7 @@ alignRelativeTo ( QPointF (absPos.x(), absPos.y()-(bboxTotal.height()-bbox.height())/2) ); - //FIXME branch.sort(); + qSort (branch.begin(),branch.end(), isAbove); positionBBox(); // Reposition bbox and contents } else {