gui signals and slots connected with backbone
[mdictionary] / trunk / src / base / gui / MainWindow.cpp
1 #include "MainWindow.h"
2 #include "ui_MainWindow.h"
3
4 MainWindow::MainWindow(Backbone *backbone, QWidget *parent):
5     QMainWindow(parent),
6     ui(new Ui::MainWindow) {
7
8     this->backbone = backbone;
9
10     ui->setupUi(this);
11     setAttribute(Qt::WA_Maemo5StackedWindow);
12
13     searchBarWidget = new SearchBarWidget(backbone);
14     wordListWidget = new WordListWidget(backbone);
15     translationWidget = new TranslationWidget(backbone, this);
16
17     connect(wordListWidget, SIGNAL(clicked(QModelIndex)),
18             translationWidget, SLOT(show(QModelIndex)));
19
20     ui->centralWidget->layout()->addWidget(wordListWidget);
21     ui->centralWidget->layout()->addWidget(searchBarWidget);
22
23
24     connect(this, SIGNAL(quit()),
25             backbone, SLOT(quit()));
26
27     connect(backbone, SIGNAL(closeOk()),
28             this, SLOT(closeOk()));
29 }
30
31 MainWindow::~MainWindow() {
32     delete ui;
33 }
34
35
36 void MainWindow::closeEvent(QCloseEvent *event) {
37     if(searchBarWidget->isSearching()) {
38         emit quit();
39         event->ignore();
40     }
41 }
42
43 void MainWindow::closeOk() {
44     QMainWindow::close();
45 }