1.1 --- a/branchitem.cpp Tue Apr 07 16:15:53 2009 +0000
1.2 +++ b/branchitem.cpp Mon Apr 20 10:42:05 2009 +0000
1.3 @@ -249,6 +249,59 @@
1.4 }
1.5 }
1.6
1.7 +TreeItem* BranchItem::findMapItem (QPointF p, TreeItem* excludeLMO)
1.8 +{
1.9 + // Search branches
1.10 + TreeItem *ti;
1.11 + for (int i=0; i<branchCount(); ++i)
1.12 + {
1.13 + ti=getBranchNum(i)->findMapItem(p, excludeLMO);
1.14 + if (ti != NULL) return ti;
1.15 + }
1.16 +
1.17 +
1.18 + // Search myself
1.19 + if (getBranchObj()->isInClickBox (p) && (this != excludeLMO) && getBranchObj()->isVisibleObj() )
1.20 + return this;
1.21 +
1.22 +/* FIXME-2 // Search float images
1.23 + for (int i=0; i<floatimage.size(); ++i )
1.24 + if (floatimage.at(i)->isInClickBox(p) &&
1.25 + (floatimage.at(i) != excludeLMO) &&
1.26 + floatimage.at(i)->getParObj()!= excludeLMO &&
1.27 + floatimage.at(i)->isVisibleObj()
1.28 + ) return floatimage.at(i)->getTreeItem();
1.29 +*/
1.30 + return NULL;
1.31 +}
1.32 +
1.33 +TreeItem* BranchItem::findID (QString sid)
1.34 +{
1.35 + // Search branches
1.36 + TreeItem *ti;
1.37 + for (int i=0; i<branchCount(); ++i)
1.38 + {
1.39 + ti=getBranchNum(i)->findID (sid);
1.40 + if (ti != NULL) return ti;
1.41 + }
1.42 +
1.43 + // Search myself
1.44 + if (sid==objID) return this;
1.45 +
1.46 +
1.47 +/*
1.48 + // Search float images
1.49 + for (int i=0; i<floatimage.size(); ++i )
1.50 + if (floatimage.at(i)->inBox(p) &&
1.51 + (floatimage.at(i) != excludeLMO) &&
1.52 + floatimage.at(i)->getParObj()!= excludeLMO &&
1.53 + floatimage.at(i)->isVisibleObj()
1.54 + ) return floatimage.at(i);
1.55 +*/
1.56 + return NULL;
1.57 +}
1.58 +
1.59 +
1.60 BranchObj* BranchItem::getBranchObj() // FIXME-3 only for transition BO->BI
1.61 {
1.62 return (BranchObj*)lmo;