3 #include "findresultitem.h"
7 FindResultItem::FindResultItem(const QVector<QVariant> &data,
8 FindResultItem *parent)
16 itemData.append(QVariant("empty"));
19 FindResultItem::~FindResultItem() { qDeleteAll(childItems); }
21 FindResultItem *FindResultItem::child(int number)
23 return childItems.value(number);
26 int FindResultItem::childCount() const { return childItems.count(); }
28 int FindResultItem::childNumber() const
31 return parentItem->childItems.indexOf(
32 const_cast<FindResultItem *>(this));
37 int FindResultItem::columnCount() const { return itemData.count(); }
39 QVariant FindResultItem::data(int column) const
41 return itemData.value(column);
44 int FindResultItem::row() const
47 return parentItem->childItems.indexOf(
48 const_cast<FindResultItem *>(this));
53 bool FindResultItem::insertChildren(int position, int count, int columns)
55 if (position < 0 || position > childItems.size())
58 for (int row = 0; row < count; ++row) {
59 QVector<QVariant> data(columns);
60 FindResultItem *item = new FindResultItem(data, this);
61 childItems.insert(position, item);
67 bool FindResultItem::insertColumns(int position, int columns)
69 if (position < 0 || position > itemData.size())
72 for (int column = 0; column < columns; ++column)
73 itemData.insert(position, QVariant());
75 foreach (FindResultItem *child, childItems)
76 child->insertColumns(position, columns);
81 FindResultItem *FindResultItem::parent() { return parentItem; }
83 bool FindResultItem::removeChildren(int position, int count)
85 if (position < 0 || position + count > childItems.size())
88 for (int row = 0; row < count; ++row)
89 delete childItems.takeAt(position);
94 bool FindResultItem::removeColumns(int position, int columns)
96 if (position < 0 || position + columns > itemData.size())
99 for (int column = 0; column < columns; ++column)
100 itemData.remove(position);
102 foreach (FindResultItem *child, childItems)
103 child->removeColumns(position, columns);
108 bool FindResultItem::setData(int column, const QVariant &value)
110 if (column < 0 || column >= itemData.size())
113 itemData[column] = value;
117 void FindResultItem::setOriginal(TreeItem *ti)
119 orgModel = ti->getModel();
123 int FindResultItem::getOriginalID() { return orgID; }
125 void FindResultItem::setOriginalIndex(int i) { orgIndex = i; }
127 int FindResultItem::getOriginalIndex() { return orgIndex; }
129 VymModel *FindResultItem::getOrgModel() { return orgModel; }