treeitem.cpp
changeset 745 2d4cc445a86a
parent 741 1b4d1ea6ea8c
child 746 ee6b0f3a4c2f
     1.1 --- a/treeitem.cpp	Thu Mar 19 11:45:28 2009 +0000
     1.2 +++ b/treeitem.cpp	Mon Mar 23 09:06:51 2009 +0000
     1.3 @@ -23,7 +23,6 @@
     1.4  void TreeItem::appendChild(TreeItem *item)
     1.5  {
     1.6      childItems.append(item);
     1.7 -	
     1.8  
     1.9  	if (item->type == Branch || item->type ==MapCenter)
    1.10  	{
    1.11 @@ -33,14 +32,17 @@
    1.12  	}
    1.13  }
    1.14  
    1.15 +#include <iostream>
    1.16 +using namespace std;
    1.17  void TreeItem::removeChild(int row)
    1.18  {
    1.19 -    if (row>=0)
    1.20 +    if (row<0 || row > childItems.size()-1)
    1.21 +		qWarning ("TreeItem::removeChild tried to remove non existing item?!\n");
    1.22 +	else
    1.23  	{
    1.24 -		delete (childItems.at(row) );
    1.25 -		childItems.removeAt (row);
    1.26 -	} else
    1.27 -		qWarning ("TreeItem::removeChild tried to remove non existing item?!\n");
    1.28 +		cout << "TI::removeChild this="<<this<<"  row="<<row<<endl;
    1.29 +		delete childItems.takeAt (row);
    1.30 +	}
    1.31  }
    1.32  
    1.33  TreeItem *TreeItem::child(int row)
    1.34 @@ -53,6 +55,14 @@
    1.35      return childItems.count();
    1.36  }
    1.37  
    1.38 +int TreeItem::childNumber() const
    1.39 +{
    1.40 +    if (parentItem)
    1.41 +        return parentItem->childItems.indexOf(const_cast<TreeItem*>(this));
    1.42 +
    1.43 +    return 0;
    1.44 +}
    1.45 +
    1.46  int TreeItem::columnCount() const
    1.47  {
    1.48      return itemData.count();