#include "ListManagerView.h"
#include "GoShoppingView.h"
+/*******************************************************************/
FamilyShoppingManagerMainWindow::FamilyShoppingManagerMainWindow(QWidget *parent)
: QMainWindow(parent), activityView(NULL), showCheckedItemsAction(NULL),
endShoppingAction(NULL), goShoppingAction(NULL), editMenu(NULL)
showListManager();
}
+/*******************************************************************/
FamilyShoppingManagerMainWindow::~FamilyShoppingManagerMainWindow()
{
delete activityView;
}
+/*******************************************************************/
void FamilyShoppingManagerMainWindow::showListManager()
{
menuBar()->clear();
update();
}
+/*******************************************************************/
void FamilyShoppingManagerMainWindow::showGoShopping()
{
menuBar()->clear();
update();
}
+/*******************************************************************/
void FamilyShoppingManagerMainWindow::showAbout()
{
QString text;
\r
#include "ShoppingTreeModel.h"\r
\r
+/*******************************************************************/\r
GoShoppingView::GoShoppingView(QString xmlFileName, QWidget *parent)\r
:QTreeView(parent)\r
{\r
this->resizeColumnToContents(column);\r
}\r
\r
+/*******************************************************************/\r
GoShoppingView::~GoShoppingView()\r
{\r
}\r
\r
#include "ShoppingTreeModel.h"\r
\r
+/*******************************************************************/\r
ListManagerView::ListManagerView(QString xmlFileName, QWidget *parent)\r
:QTreeView(parent)\r
{\r
this->resizeColumnToContents(column);\r
}\r
\r
+/*******************************************************************/\r
ListManagerView::~ListManagerView()\r
{\r
}\r
\r
+/*******************************************************************/\r
void ListManagerView::updateActions()\r
{\r
bool hasSelection = !this->selectionModel()->selection().isEmpty();\r
\r
#include "ShoppingTreeItem.h"\r
\r
+/*******************************************************************/\r
ShoppingTreeItem::ShoppingTreeItem(const QVector<QVariant> &data,\r
ShoppingTreeItem *parent) : m_itemType(NotDefined)\r
{\r
itemData = data;\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeItem::~ShoppingTreeItem()\r
{\r
qDeleteAll(childItems);\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeItem *ShoppingTreeItem::child(int number)\r
{\r
return childItems.value(number);\r
}\r
\r
+/*******************************************************************/\r
int ShoppingTreeItem::childCount() const\r
{\r
return childItems.count();\r
}\r
\r
+/*******************************************************************/\r
int ShoppingTreeItem::childNumber() const\r
{\r
if (parentItem)\r
return 0;\r
}\r
\r
+/*******************************************************************/\r
int ShoppingTreeItem::columnCount() const\r
{\r
return itemData.count();\r
}\r
\r
+/*******************************************************************/\r
QVariant ShoppingTreeItem::data(int column) const\r
{\r
return itemData.value(column);\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::insertChildren(int position, int count, int columns)\r
{\r
if (position < 0 || position > childItems.size())\r
return true;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::insertColumns(int position, int columns)\r
{\r
if (position < 0 || position > itemData.size())\r
return true;\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeItem *ShoppingTreeItem::parent()\r
{\r
return parentItem;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::removeChildren(int position, int count)\r
{\r
if (position < 0 || position + count > childItems.size())\r
return true;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::removeColumns(int position, int columns)\r
{\r
if (position < 0 || position + columns > itemData.size())\r
return true;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::setData(int column, const QVariant &value)\r
{\r
if (column < 0 || column >= itemData.size())\r
return true;\r
}\r
\r
+/*******************************************************************/\r
bool ShoppingTreeItem::setItemType(ItemType type)\r
{\r
if(type == NotDefined)\r
return (m_itemType == type) ? true : false;\r
}\r
\r
+/*******************************************************************/\r
ShoppingTreeItem::ItemType ShoppingTreeItem::getItemType() const\r
{\r
return m_itemType;\r
}\r
\r
+/*******************************************************************/\r
void ShoppingTreeItem::waitItemTypeDefinition()\r
{\r
m_typeSemaphore.acquire();\r
#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
#include <QtGui/QApplication>
#include "FamilyShoppingManagerMainWindow.h"
+/*******************************************************************/
int main(int argc, char *argv[])
{
QApplication a(argc, argv);