#include <QApplication>\r
#include <QtGui>\r
\r
+/*******************************************************************/\r
ShoppingTreeModel::ShoppingTreeModel(const QString &xmlFileName,\r
QObject *parent) :\r
QAbstractItemModel(parent), m_document("ShoppingList")\r
}\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeModel::~ShoppingTreeModel()\r
{\r
delete rootItem;\r
}\r
\r
+/*******************************************************************/\r
QVariant ShoppingTreeModel::data(const QModelIndex &index, int role) const\r
{\r
if(!index.isValid())\r
return item->data(index.column());\r
}\r
\r
+/*******************************************************************/\r
Qt::ItemFlags ShoppingTreeModel::flags(const QModelIndex &index) const\r
{\r
if(!index.isValid())\r
return Qt::ItemIsEditable | Qt::ItemIsEnabled | Qt::ItemIsSelectable;\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeItem *ShoppingTreeModel::getItem(const QModelIndex &index) const\r
{\r
if(index.isValid()){\r
return rootItem;\r
}\r
\r
+/*******************************************************************/\r
QVariant ShoppingTreeModel::headerData(int section, Qt::Orientation orientation,\r
int role) const\r
{\r
return QVariant();\r
}\r
\r
+/*******************************************************************/\r
QModelIndex ShoppingTreeModel::index(int row, int column, const QModelIndex &parent) const\r
{\r
if(parent.isValid() && parent.column() != 0)\r
return QModelIndex();\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::insertColumns(int position, int columns, const QModelIndex &parent)\r
{\r
bool success;\r
return success;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::insertRows(int position, int rows, const QModelIndex &parent)\r
{\r
ShoppingTreeItem *parentItem = getItem(parent);\r
return success;\r
}\r
\r
+/*******************************************************************/\r
QModelIndex ShoppingTreeModel::parent(const QModelIndex &index) const\r
{\r
if(!index.isValid())\r
return createIndex(parentItem->childNumber(), 0, parentItem);\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::removeColumns(int position, int columns, const QModelIndex &parent)\r
{\r
bool success;\r
return success;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::removeRows(int position, int rows, const QModelIndex &parent)\r
{\r
ShoppingTreeItem *parentItem = getItem(parent);\r
return success;\r
}\r
\r
+/*******************************************************************/\r
int ShoppingTreeModel::rowCount(const QModelIndex &parent) const\r
{\r
ShoppingTreeItem *parentItem = getItem(parent);\r
return parentItem->childCount();\r
}\r
\r
+/*******************************************************************/\r
int ShoppingTreeModel::columnCount(const QModelIndex &parent) const\r
{\r
return rootItem->columnCount();\r
}\r
+\r
+/*******************************************************************/\r
bool ShoppingTreeModel::setData(const QModelIndex &index, const QVariant &value, int role)\r
{\r
if(role != Qt::EditRole)\r
return result;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::setHeaderData(int section, Qt::Orientation orientation,\r
const QVariant &value, int role)\r
{\r
return result;\r
}\r
\r
+/*******************************************************************/\r
void ShoppingTreeModel::registerInsertedChild(ShoppingTreeItem *item)\r
{\r
// wait until item type is defined\r
SLOT(deleteRemovedChild(ShoppingTreeItem*)));\r
}\r
\r
+/*******************************************************************/\r
void ShoppingTreeModel::deleteRemovedChild(ShoppingTreeItem *item)\r
{\r
QDomElement element = m_domElementForItem.value(item);\r
m_domElementForItem.remove(item);\r
}\r
\r
+/*******************************************************************/\r
void ShoppingTreeModel::parseCategoryElement(const QDomElement &element,\r
ShoppingTreeItem *parentItem)\r
{\r
}\r
}\r
\r
+/*******************************************************************/\r
QVector<QVariant> ShoppingTreeModel::getColumnsFromItemElement(const QDomElement &element)\r
{\r
QVector<QVariant> data;\r
return data;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeModel::updateDomElement(ShoppingTreeItem *item, int column)\r
{\r
QDomElement element = m_domElementForItem.value(item);\r
return false;\r
\r
bool success;\r
- switch(column)\r
+ switch(column)/*******************************************************************/\r
{\r
case 0:\r
{\r
return success;\r
}\r
\r
+/*******************************************************************/\r
void ShoppingTreeModel::updateXmlFile() const\r
{\r
QFile xmlFile(m_xmlFileName);\r