From: onil Date: Sat, 6 Feb 2010 18:05:07 +0000 (+0000) Subject: git-svn-id: file:///svnroot/family-shop-mgr@19 26eb2498-383b-47a6-be48-5d6f36779e85 X-Git-Url: http://git.maemo.org/git/?p=family-shop-mgr;a=commitdiff_plain;h=ab38c571edb4309976ef06a51d2cfb3425b771b4 git-svn-id: file:///svnroot/family-shop-mgr@19 26eb2498-383b-47a6-be48-5d6f36779e85 --- diff --git a/code/family-shop-mgr/FamilyShoppingManagerMainWindow.cpp b/code/family-shop-mgr/FamilyShoppingManagerMainWindow.cpp index 0e6308c..bb4a8c9 100644 --- a/code/family-shop-mgr/FamilyShoppingManagerMainWindow.cpp +++ b/code/family-shop-mgr/FamilyShoppingManagerMainWindow.cpp @@ -29,6 +29,8 @@ FamilyShoppingManagerMainWindow::FamilyShoppingManagerMainWindow(QWidget *parent) : QMainWindow(parent), activityView(NULL) { + showListManager(); + editMenu = new QMenu(tr("&Edit"), this); editMenu->addAction(tr("Add category")); editMenu->addAction(tr("Remove category")); @@ -36,11 +38,15 @@ FamilyShoppingManagerMainWindow::FamilyShoppingManagerMainWindow(QWidget *parent editMenu->addAction(tr("Remove item")); menuBar()->addMenu(editMenu); + goShoppingAction = new QAction(tr("Go shopping!"), this); + connect(goShoppingAction, SIGNAL(triggered()), + this, SLOT(showGoShopping())); + menuBar()->addAction(goShoppingAction); + aboutAction = new QAction(tr("&About"), this); connect(aboutAction, SIGNAL(triggered()), this, SLOT(showAbout())); menuBar()->addAction(aboutAction); - showListManager(); setCentralWidget(activityView); update(); } @@ -52,14 +58,49 @@ FamilyShoppingManagerMainWindow::~FamilyShoppingManagerMainWindow() void FamilyShoppingManagerMainWindow::showListManager() { + menuBar()->clear(); + (showCheckedItemsAction) ? delete showCheckedItemsAction:; + (endShoppingAction) ? delete endShoppingAction:; + delete activityView; activityView = new ListManagerView("ShoppingList.xml", this); + + editMenu = new QMenu(tr("&Edit"), this); + editMenu->addAction(tr("Add category")); + editMenu->addAction(tr("Remove category")); + editMenu->addAction(tr("Add item")); + editMenu->addAction(tr("Remove item")); + menuBar()->addMenu(editMenu); + + goShoppingAction = new QAction(tr("Go shopping!"), this); + connect(goShoppingAction, SIGNAL(triggered()), + this, SLOT(showGoShopping())); + menuBar()->addAction(goShoppingAction); + + menuBar()->addAction(aboutAction); } void FamilyShoppingManagerMainWindow::showGoShopping() { + menuBar()->clear(); + delete editMenu; + delete goShoppingAction; + delete activityView; activityView = new GoShoppingView("ShoppingList.xml", this); + + showCheckedItemsAction = new QAction(tr("&Show checked"), this); + showCheckedItemsAction->setCheckable(true); + connect(showCheckedItemsAction, SIGNAL(toggled(bool)), + activityView, SLOT(showChecked(bool))); + menuBar()->addAction(showCheckedItemsAction); + + endShoppingAction = new QAction(tr("&End shopping"), this); + connect(endShoppingAction, SIGNAL(triggered()), + this, SLOT(showListManager())); + menuBar()->addAction(endShoppingAction); + + menuBar()->addAction(aboutAction); } void FamilyShoppingManagerMainWindow::showAbout() diff --git a/code/family-shop-mgr/FamilyShoppingManagerMainWindow.h b/code/family-shop-mgr/FamilyShoppingManagerMainWindow.h index 16546b7..dbcae1a 100644 --- a/code/family-shop-mgr/FamilyShoppingManagerMainWindow.h +++ b/code/family-shop-mgr/FamilyShoppingManagerMainWindow.h @@ -41,6 +41,9 @@ private: QWidget *activityView; QMenu *editMenu; + QAction *showCheckedItemsAction; + QAction *goShoppingAction; + QAction *endShoppingAction; QAction *aboutAction; }; diff --git a/code/family-shop-mgr/ShoppingTreeModel.cpp b/code/family-shop-mgr/ShoppingTreeModel.cpp index 4a485e8..0a65d9d 100644 --- a/code/family-shop-mgr/ShoppingTreeModel.cpp +++ b/code/family-shop-mgr/ShoppingTreeModel.cpp @@ -314,7 +314,8 @@ void ShoppingTreeModel::parseCategoryElement(const QDomElement &element, parentItem = rootItem; ShoppingTreeItem *item; - QString title = element.firstChildElement("title").text(); + QDomElement child = element.firstChildElement("title"); + QString title = child.text(); if(!title.isEmpty()) { parentItem->insertChildren(parentItem->childCount(), 1, @@ -334,7 +335,7 @@ void ShoppingTreeModel::parseCategoryElement(const QDomElement &element, } // add each sub category and item to the tree - QDomElement child = element.firstChildElement(); + child = child.nextSiblingElement(); while(!child.isNull()) { if(child.tagName() == "category") diff --git a/code/family-shop-mgr/family-shop-mgr.pro.user b/code/family-shop-mgr/family-shop-mgr.pro.user index e7b4303..244ccc4 100644 --- a/code/family-shop-mgr/family-shop-mgr.pro.user +++ b/code/family-shop-mgr/family-shop-mgr.pro.user @@ -97,11 +97,11 @@ Debug - DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-wQ2ScvWU3G,guid=8b21ab67206236c5c7975e424b6d31c6 + DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-KgyjHUaC1G,guid=106bbfc436dd497d5877374a4b6d90b9 DESKTOP_SESSION=default DISPLAY=:0.0 DM_CONTROL=/var/run/xdmctl - GPG_AGENT_INFO=/tmp/gpg-rKitZ6/S.gpg-agent:1958:1 + GPG_AGENT_INFO=/tmp/gpg-yzdzjF/S.gpg-agent:1952:1 GS_LIB=/home/onil/.fonts GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/onil/.gtkrc-2.0:/home/onil/.gtkrc-2.0-kde4:/home/onil/.kde/share/config/gtkrc-2.0 GTK_RC_FILES=/etc/gtk/gtkrc:/home/onil/.gtkrc::/home/onil/.kde/share/config/gtkrc @@ -111,23 +111,22 @@ KDE_SESSION_UID=1000 KDE_SESSION_VERSION=4 LANG=fr_FR.UTF-8 - LANGUAGE= LD_LIBRARY_PATH=/usr/lib/qtcreator: LOGNAME=onil PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games PWD=/home/onil/Documents QTDIR=/usr/share/qt4 QT_PLUGIN_PATH=/home/onil/.kde/lib/kde4/plugins/:/usr/lib/kde4/plugins/ - SESSION_MANAGER=local/onil-netbook:@/tmp/.ICE-unix/2049,unix/onil-netbook:/tmp/.ICE-unix/2049 + SESSION_MANAGER=local/onil-netbook:@/tmp/.ICE-unix/2045,unix/onil-netbook:/tmp/.ICE-unix/2045 SHELL=/bin/bash SHLVL=0 - SSH_AGENT_PID=1957 - SSH_AUTH_SOCK=/tmp/ssh-XVjNkq1907/agent.1907 + SSH_AGENT_PID=1951 + SSH_AUTH_SOCK=/tmp/ssh-xgUrxv1901/agent.1901 USER=onil WINDOWPATH=7 XCURSOR_THEME=oxy-white XDG_DATA_DIRS=/usr/share:/usr/share:/usr/local/share - XDG_SESSION_COOKIE=67465ad3dd74e5003d0b02474b126985-1265447365.410173-1351979716 + XDG_SESSION_COOKIE=67465ad3dd74e5003d0b02474b126985-1265471673.149631-453933478 XDM_MANAGED=method=classic @@ -148,11 +147,11 @@ Debug - DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-wQ2ScvWU3G,guid=8b21ab67206236c5c7975e424b6d31c6 + DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-KgyjHUaC1G,guid=106bbfc436dd497d5877374a4b6d90b9 DESKTOP_SESSION=default DISPLAY=:0.0 DM_CONTROL=/var/run/xdmctl - GPG_AGENT_INFO=/tmp/gpg-rKitZ6/S.gpg-agent:1958:1 + GPG_AGENT_INFO=/tmp/gpg-yzdzjF/S.gpg-agent:1952:1 GS_LIB=/home/onil/.fonts GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/onil/.gtkrc-2.0:/home/onil/.gtkrc-2.0-kde4:/home/onil/.kde/share/config/gtkrc-2.0 GTK_RC_FILES=/etc/gtk/gtkrc:/home/onil/.gtkrc::/home/onil/.kde/share/config/gtkrc @@ -162,23 +161,22 @@ KDE_SESSION_UID=1000 KDE_SESSION_VERSION=4 LANG=fr_FR.UTF-8 - LANGUAGE= LD_LIBRARY_PATH=/usr/lib/qtcreator: LOGNAME=onil PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games PWD=/home/onil/Documents QTDIR=/usr/share/qt4 QT_PLUGIN_PATH=/home/onil/.kde/lib/kde4/plugins/:/usr/lib/kde4/plugins/ - SESSION_MANAGER=local/onil-netbook:@/tmp/.ICE-unix/2049,unix/onil-netbook:/tmp/.ICE-unix/2049 + SESSION_MANAGER=local/onil-netbook:@/tmp/.ICE-unix/2045,unix/onil-netbook:/tmp/.ICE-unix/2045 SHELL=/bin/bash SHLVL=0 - SSH_AGENT_PID=1957 - SSH_AUTH_SOCK=/tmp/ssh-XVjNkq1907/agent.1907 + SSH_AGENT_PID=1951 + SSH_AUTH_SOCK=/tmp/ssh-xgUrxv1901/agent.1901 USER=onil WINDOWPATH=7 XCURSOR_THEME=oxy-white XDG_DATA_DIRS=/usr/share:/usr/share:/usr/local/share - XDG_SESSION_COOKIE=67465ad3dd74e5003d0b02474b126985-1265447365.410173-1351979716 + XDG_SESSION_COOKIE=67465ad3dd74e5003d0b02474b126985-1265471673.149631-453933478 XDM_MANAGED=method=classic false