2 * This file is part of family-shop-mgr.
4 * family-shop-mgr is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * family-shop-mgr is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with family-shop-mgr. If not, see <http://www.gnu.org/licenses/>.
17 * Author: Unai IRIGOYEN
22 #include "FamilyShoppingManagerMainWindow.h"
24 #include <QMessageBox>
26 #include "ListManagerView.h"
27 #include "GoShoppingView.h"
29 FamilyShoppingManagerMainWindow::FamilyShoppingManagerMainWindow(QWidget *parent)
30 : QMainWindow(parent), activityView(NULL), showCheckedItemsAction(NULL),
31 endShoppingAction(NULL), goShoppingAction(NULL), editMenu(NULL)
33 aboutAction = new QAction(tr("&About"), this);
34 connect(aboutAction, SIGNAL(triggered()), this, SLOT(showAbout()));
35 menuBar()->addAction(aboutAction);
41 FamilyShoppingManagerMainWindow::~FamilyShoppingManagerMainWindow()
46 void FamilyShoppingManagerMainWindow::showListManager()
50 delete showCheckedItemsAction;
51 delete endShoppingAction;
54 activityView = new ListManagerView("ShoppingList.xml", this);
55 setCentralWidget(activityView);
57 editMenu = new QMenu(tr("&Edit"), this);
58 editMenu->addAction(tr("Add category"));
59 editMenu->addAction(tr("Remove category"));
60 editMenu->addAction(tr("Add item"));
61 editMenu->addAction(tr("Remove item"));
62 menuBar()->addMenu(editMenu);
64 goShoppingAction = new QAction(tr("Go shopping!"), this);
65 connect(goShoppingAction, SIGNAL(triggered()),
66 this, SLOT(showGoShopping()));
67 menuBar()->addAction(goShoppingAction);
69 menuBar()->addAction(aboutAction);
73 void FamilyShoppingManagerMainWindow::showGoShopping()
77 delete goShoppingAction;
80 activityView = new GoShoppingView("ShoppingList.xml", this);
81 setCentralWidget(activityView);
83 showCheckedItemsAction = new QAction(tr("&Show checked"), this);
84 showCheckedItemsAction->setCheckable(true);
85 connect(showCheckedItemsAction, SIGNAL(toggled(bool)),
86 activityView, SLOT(showChecked(bool)));
87 menuBar()->addAction(showCheckedItemsAction);
89 endShoppingAction = new QAction(tr("&End shopping"), this);
90 connect(endShoppingAction, SIGNAL(triggered()),
91 this, SLOT(showListManager()));
92 menuBar()->addAction(endShoppingAction);
94 menuBar()->addAction(aboutAction);
98 void FamilyShoppingManagerMainWindow::showAbout()
101 text = "Application name: Family shopping manager\n";
102 text += "Author: Unai IRIGOYEN\n\n";
103 text += "Licence: GPL";
104 QMessageBox::about(this,tr("About"), text);