From f55462957389d848375fe362136eaa1858b2fe4f Mon Sep 17 00:00:00 2001 From: onil Date: Mon, 7 Dec 2009 16:30:38 +0000 Subject: [PATCH] git-svn-id: file:///svnroot/family-shop-mgr@3 26eb2498-383b-47a6-be48-5d6f36779e85 --- .../FamilyShoppingManagerStartView.ui | 211 ++++++++++---------- code/family-shop-mgr/ShoppingTreeItem.cpp | 97 ++++++++- code/family-shop-mgr/ShoppingTreeItem.h | 10 +- code/family-shop-mgr/ShoppingTreeModel.h | 1 + code/family-shop-mgr/family-shop-mgr.pro.user | 135 +++++++++++++ 5 files changed, 343 insertions(+), 111 deletions(-) diff --git a/code/family-shop-mgr/FamilyShoppingManagerStartView.ui b/code/family-shop-mgr/FamilyShoppingManagerStartView.ui index 7a81a56..9ebce74 100644 --- a/code/family-shop-mgr/FamilyShoppingManagerStartView.ui +++ b/code/family-shop-mgr/FamilyShoppingManagerStartView.ui @@ -1,105 +1,106 @@ - - - familyShoppingManagerStartView - - - - 0 - 0 - 350 - 96 - - - - - 0 - 0 - - - - Family Shopping Manager - - - - - - - - - - 0 - 0 - - - - - 291 - 30 - - - - - 300 - 30 - - - - - - - Choose the task you want to perform: - - - - - - - -1 - - - - - - 140 - 40 - - - - - - - Manage the -shopping list - - - - - - - - 0 - 0 - - - - - 140 - 40 - - - - - - - Go shopping! - - - - - - - - - - - + + + Unai IRIGOYEN + FamilyShoppingManagerStartView + + + + 0 + 0 + 349 + 96 + + + + + 0 + 0 + + + + Family Shopping Manager + + + + + + + + + + 0 + 0 + + + + + 291 + 30 + + + + + 300 + 30 + + + + + + + Choose the task you want to perform: + + + + + + + 6 + + + + + + 140 + 40 + + + + + + + Manage the +shopping list + + + + + + + + 0 + 0 + + + + + 140 + 40 + + + + + + + Go shopping! + + + + + + + + + + + diff --git a/code/family-shop-mgr/ShoppingTreeItem.cpp b/code/family-shop-mgr/ShoppingTreeItem.cpp index f81fa1d..e66a4ed 100644 --- a/code/family-shop-mgr/ShoppingTreeItem.cpp +++ b/code/family-shop-mgr/ShoppingTreeItem.cpp @@ -21,7 +21,7 @@ #include "ShoppingTreeItem.h" -ShoppingTreeItem::ShoppingTreeItem(const QVector &data, TreeItem *parent) +ShoppingTreeItem::ShoppingTreeItem(const QVector &data, ShoppingTreeItem *parent) { parentItem = parent; itemData = data; @@ -31,3 +31,98 @@ ShoppingTreeItem::~ShoppingTreeItem() { qDeleteAll(childItems); } + +ShoppingTreeItem *ShoppingTreeItem::child(int number) +{ + return childItems.value(number); +} + +int ShoppingTreeItem::childCount() const +{ + return childItems.count(); +} + +int ShoppingTreeItem::childNumber() const +{ + if (parentItem) + return parentItem->childItems.indexOf(const_cast(this)); + + return 0; +} + +int ShoppingTreeItem::columnCount() const +{ + return itemData.count(); +} + +QVariant ShoppingTreeItem::data(int column) const +{ + return itemData.value(column); +} + +bool ShoppingTreeItem::insertChildren(int position, int count, int columns) +{ + if (position < 0 || position > childItems.size()) + return false; + + for (int row = 0; row < count; ++row) { + QVector data(columns); + ShoppingTreeItem *item = new ShoppingTreeItem(data, this); + childItems.insert(position, item); + } + + return true; +} + +bool ShoppingTreeItem::insertColumns(int position, int columns) +{ + if (position < 0 || position > itemData.size()) + return false; + + for (int column = 0; column < columns; ++column) + itemData.insert(position, QVariant()); + + foreach (ShoppingTreeItem *child, childItems) + child->insertColumns(position, columns); + + return true; +} + +ShoppingTreeItem *ShoppingTreeItem::parent() +{ + return parentItem; +} + +bool ShoppingTreeItem::removeChildren(int position, int count) +{ + if (position < 0 || position + count > childItems.size()) + return false; + + for (int row = 0; row < count; ++row) + delete childItems.takeAt(position); + + return true; +} + +bool ShoppingTreeItem::removeColumns(int position, int columns) +{ + if (position < 0 || position + columns > itemData.size()) + return false; + + for (int column = 0; column < columns; ++column) + itemData.remove(position); + + foreach (ShoppingTreeItem *child, childItems) + child->removeColumns(position, columns); + + return true; +} + +bool ShoppingTreeItem::setData(int column, const QVariant &value) +{ + if (column < 0 || column >= itemData.size()) + return false; + + itemData[column] = value; + return true; +} diff --git a/code/family-shop-mgr/ShoppingTreeItem.h b/code/family-shop-mgr/ShoppingTreeItem.h index eb4faf7..73475a3 100644 --- a/code/family-shop-mgr/ShoppingTreeItem.h +++ b/code/family-shop-mgr/ShoppingTreeItem.h @@ -29,8 +29,8 @@ class ShoppingTreeItem { public: - ShoppingTreeItem(const QVector &data, TreeItem *parent = 0); - ShoppingTreeItem(); + ShoppingTreeItem(const QVector &data, ShoppingTreeItem *parent = 0); + ~ShoppingTreeItem(); ShoppingTreeItem *child(int number); int childCount() const; @@ -38,16 +38,16 @@ public: QVariant data(int column) const; bool insertChildren(int position, int count, int columns); bool insertColumns(int position, int columns); - TreeItem *parent(); + ShoppingTreeItem *parent(); bool removeChildren(int position, int count); bool removeColumns(int position, int columns); int childNumber() const; bool setData(int column, const QVariant &value); private: - QList childItems; + QList childItems; QVector itemData; - TreeItem *parentItem; + ShoppingTreeItem *parentItem; }; #endif // SHOPPINGTREEITEM_H diff --git a/code/family-shop-mgr/ShoppingTreeModel.h b/code/family-shop-mgr/ShoppingTreeModel.h index f985b59..726e934 100644 --- a/code/family-shop-mgr/ShoppingTreeModel.h +++ b/code/family-shop-mgr/ShoppingTreeModel.h @@ -23,6 +23,7 @@ #define SHOPPINGTREEMODEL_H #include +#include class ShoppingTreeModel : public QAbstractItemModel { diff --git a/code/family-shop-mgr/family-shop-mgr.pro.user b/code/family-shop-mgr/family-shop-mgr.pro.user index 1ba29f8..8c57c52 100644 --- a/code/family-shop-mgr/family-shop-mgr.pro.user +++ b/code/family-shop-mgr/family-shop-mgr.pro.user @@ -76,6 +76,52 @@ buildconfiguration-Debug-buildstep0 Debug + + ALLUSERSPROFILE=C:\Documents and Settings\All Users + APPDATA=C:\Documents and Settings\Unai\Application Data + APR_ICONV_PATH=C:\Program Files\Subversion\iconv + CLIENTNAME=Console + COMMONPROGRAMFILES=C:\Program Files\Fichiers communs + COMPUTERNAME=UNAI-LAPTOP + COMSPEC=C:\WINDOWS\system32\cmd.exe + DBCONFIG=C:\adabas\sql + DBROOT=C:\adabas\ + DBWORK=C:\adabas\sql + DXSDK_DIR=C:\Program Files\Microsoft DirectX SDK (April 2007)\ + FP_NO_HOST_CHECK=NO + HOMEDRIVE=C: + HOMEPATH=\Documents and Settings\Unai + LOGONSERVER=\\UNAI-LAPTOP + NUMBER_OF_PROCESSORS=2 + OS=Windows_NT + PATH=C:\Qt\2009.05\mingw\bin;C:\Qt\2009.05\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\CSL Arm Toolchain\bin;C:\Program Files\Fichiers communs\Symbian\Tools;C:\Perl\site\bin;C:\Perl\bin;C:\Program Files\Microsoft DirectX SDK (April 2007)\Utilities\Bin\x86;C:\Program Files\MiKTeX 2.7\miktex\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\MySQL\MySQL_Server_51\bin;C:\OpenCV2.0\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Subversion\bin;C:\adabas\bin;C:\adabas\pgm;C:\Program Files\CVSNT\;C:\Program Files\CMake 2.6\bin + PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH + PROCESSOR_ARCHITECTURE=x86 + PROCESSOR_IDENTIFIER=x86 Family 6 Model 28 Stepping 2, GenuineIntel + PROCESSOR_LEVEL=6 + PROCESSOR_REVISION=1c02 + PROGRAMFILES=C:\Program Files + QTDIR=C:/Qt/2009.05/qt + SESSIONNAME=Console + SYSTEMDRIVE=C: + SYSTEMROOT=C:\WINDOWS + TEMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + TMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + USERDOMAIN=UNAI-LAPTOP + USERNAME=Unai + USERPROFILE=C:\Documents and Settings\Unai + VS90COMNTOOLS=c:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\ + WINDIR=C:\WINDOWS + + + C:/Documents and Settings/Unai/Mes documents/Developpement/FamilyShoppingManager/code/family-shop-mgr/family-shop-mgr.pro + -spec + win32-g++ + -r + + c:/qt/2009.05/qt/bin/qmake.exe + true + C:/Documents and Settings/Unai/Mes documents/Developpement/FamilyShoppingManager/code/family-shop-mgr @@ -83,12 +129,101 @@ buildconfiguration-Debug-buildstep1 Debug + + ALLUSERSPROFILE=C:\Documents and Settings\All Users + APPDATA=C:\Documents and Settings\Unai\Application Data + APR_ICONV_PATH=C:\Program Files\Subversion\iconv + CLIENTNAME=Console + COMMONPROGRAMFILES=C:\Program Files\Fichiers communs + COMPUTERNAME=UNAI-LAPTOP + COMSPEC=C:\WINDOWS\system32\cmd.exe + DBCONFIG=C:\adabas\sql + DBROOT=C:\adabas\ + DBWORK=C:\adabas\sql + DXSDK_DIR=C:\Program Files\Microsoft DirectX SDK (April 2007)\ + FP_NO_HOST_CHECK=NO + HOMEDRIVE=C: + HOMEPATH=\Documents and Settings\Unai + LOGONSERVER=\\UNAI-LAPTOP + NUMBER_OF_PROCESSORS=2 + OS=Windows_NT + PATH=C:\Qt\2009.05\mingw\bin;C:\Qt\2009.05\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\CSL Arm Toolchain\bin;C:\Program Files\Fichiers communs\Symbian\Tools;C:\Perl\site\bin;C:\Perl\bin;C:\Program Files\Microsoft DirectX SDK (April 2007)\Utilities\Bin\x86;C:\Program Files\MiKTeX 2.7\miktex\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\MySQL\MySQL_Server_51\bin;C:\OpenCV2.0\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Subversion\bin;C:\adabas\bin;C:\adabas\pgm;C:\Program Files\CVSNT\;C:\Program Files\CMake 2.6\bin + PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH + PROCESSOR_ARCHITECTURE=x86 + PROCESSOR_IDENTIFIER=x86 Family 6 Model 28 Stepping 2, GenuineIntel + PROCESSOR_LEVEL=6 + PROCESSOR_REVISION=1c02 + PROGRAMFILES=C:\Program Files + QTDIR=C:/Qt/2009.05/qt + SESSIONNAME=Console + SYSTEMDRIVE=C: + SYSTEMROOT=C:\WINDOWS + TEMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + TMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + USERDOMAIN=UNAI-LAPTOP + USERNAME=Unai + USERPROFILE=C:\Documents and Settings\Unai + VS90COMNTOOLS=c:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\ + WINDIR=C:\WINDOWS + + false + + -w + + C:/Qt/2009.05/mingw/bin/mingw32-make.exe + true + C:/Documents and Settings/Unai/Mes documents/Developpement/FamilyShoppingManager/code/family-shop-mgr buildconfiguration-Debug-cleanstep0 Debug + + ALLUSERSPROFILE=C:\Documents and Settings\All Users + APPDATA=C:\Documents and Settings\Unai\Application Data + APR_ICONV_PATH=C:\Program Files\Subversion\iconv + CLIENTNAME=Console + COMMONPROGRAMFILES=C:\Program Files\Fichiers communs + COMPUTERNAME=UNAI-LAPTOP + COMSPEC=C:\WINDOWS\system32\cmd.exe + DBCONFIG=C:\adabas\sql + DBROOT=C:\adabas\ + DBWORK=C:\adabas\sql + DXSDK_DIR=C:\Program Files\Microsoft DirectX SDK (April 2007)\ + FP_NO_HOST_CHECK=NO + HOMEDRIVE=C: + HOMEPATH=\Documents and Settings\Unai + LOGONSERVER=\\UNAI-LAPTOP + NUMBER_OF_PROCESSORS=2 + OS=Windows_NT + PATH=C:\Qt\2009.05\mingw\bin;C:\Qt\2009.05\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\CSL Arm Toolchain\bin;C:\Program Files\Fichiers communs\Symbian\Tools;C:\Perl\site\bin;C:\Perl\bin;C:\Program Files\Microsoft DirectX SDK (April 2007)\Utilities\Bin\x86;C:\Program Files\MiKTeX 2.7\miktex\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\MySQL\MySQL_Server_51\bin;C:\OpenCV2.0\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Subversion\bin;C:\adabas\bin;C:\adabas\pgm;C:\Program Files\CVSNT\;C:\Program Files\CMake 2.6\bin + PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH + PROCESSOR_ARCHITECTURE=x86 + PROCESSOR_IDENTIFIER=x86 Family 6 Model 28 Stepping 2, GenuineIntel + PROCESSOR_LEVEL=6 + PROCESSOR_REVISION=1c02 + PROGRAMFILES=C:\Program Files + QTDIR=C:/Qt/2009.05/qt + SESSIONNAME=Console + SYSTEMDRIVE=C: + SYSTEMROOT=C:\WINDOWS + TEMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + TMP=C:\DOCUME~1\Unai\LOCALS~1\Temp + USERDOMAIN=UNAI-LAPTOP + USERNAME=Unai + USERPROFILE=C:\Documents and Settings\Unai + VS90COMNTOOLS=c:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\ + WINDIR=C:\WINDOWS + + true + + clean + -w + + C:/Qt/2009.05/mingw/bin/mingw32-make.exe + true + C:/Documents and Settings/Unai/Mes documents/Developpement/FamilyShoppingManager/code/family-shop-mgr true clean -- 1.7.9.5