git-svn-id: file:///svnroot/family-shop-mgr@19 26eb2498-383b-47a6-be48-5d6f36779e85
[family-shop-mgr] / code / family-shop-mgr / FamilyShoppingManagerMainWindow.cpp
index 3d0162a..bb4a8c9 100644 (file)
  */
 
 #include "FamilyShoppingManagerMainWindow.h"
+#include <QMenuBar>
+#include <QMessageBox>
 
 #include "ListManagerView.h"
 #include "GoShoppingView.h"
 
 FamilyShoppingManagerMainWindow::FamilyShoppingManagerMainWindow(QWidget *parent)
-    : QMainWindow(parent), activityView(new ListManagerView(this))
+    : QMainWindow(parent), activityView(NULL)
 {
-    ui->setupUi(this);
-    connect(ui->manageButton, SIGNAL(clicked()), this, SLOT(openListManager()));
-    connect(ui->goShoppingButton, SIGNAL(clicked()), this, SLOT(openGoShopping()));
+    showListManager();
+
+    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);
+
+    aboutAction = new QAction(tr("&About"), this);
+    connect(aboutAction, SIGNAL(triggered()), this, SLOT(showAbout()));
+    menuBar()->addAction(aboutAction);
+
+    setCentralWidget(activityView);
+    update();
 }
 
-FamilyShoppingManagerStartView::~FamilyShoppingManagerStartView()
+FamilyShoppingManagerMainWindow::~FamilyShoppingManagerMainWindow()
 {
-    delete ui;
     delete activityView;
 }
 
-void FamilyShoppingManagerStartView::openListManager()
+void FamilyShoppingManagerMainWindow::showListManager()
 {
-    this->hide();
+    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 FamilyShoppingManagerStartView::openGoShopping()
+void FamilyShoppingManagerMainWindow::showGoShopping()
 {
-    //this->hide();
+    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()
+{
+    QString text;
+    text = "Application name: Family shopping manager\n";
+    text += "Author: Unai IRIGOYEN\n\n";
+    text += "Licence: GPL";
+    QMessageBox::about(this,tr("About"), text);
 }