From: Toni Jussila Date: Tue, 30 Mar 2010 07:36:26 +0000 (+0300) Subject: Routesavedialog: Start/stop button added and satellite picture blinking. X-Git-Tag: v0.2-RC1~34^2~11^2 X-Git-Url: http://git.maemo.org/git/?p=speedfreak;a=commitdiff_plain;h=db1f9db46a3b58e3d99803895fcb04f79aea507d Routesavedialog: Start/stop button added and satellite picture blinking. --- diff --git a/Client/mainwindow.cpp b/Client/mainwindow.cpp index 81103a4..c19d5d1 100644 --- a/Client/mainwindow.cpp +++ b/Client/mainwindow.cpp @@ -11,11 +11,14 @@ MainWindow::MainWindow(QWidget *parent) : ui->setupUi(this); creditsDialog = new CreditsDialog; + routeSaveDialog = new RouteSaveDialog; } MainWindow::~MainWindow() { delete ui; + + delete routeSaveDialog; } void MainWindow::changeEvent(QEvent *e) @@ -39,3 +42,8 @@ void MainWindow::on_pushButtonCredits_clicked() { creditsDialog->show(); } + +void MainWindow::on_pushButtonRoute_clicked() +{ + routeSaveDialog->show(); +} diff --git a/Client/mainwindow.h b/Client/mainwindow.h index 0e681f2..f949630 100644 --- a/Client/mainwindow.h +++ b/Client/mainwindow.h @@ -3,6 +3,7 @@ #include #include "creditsdialog.h" +#include "routesavedialog.h" namespace Ui { class MainWindow; @@ -15,6 +16,7 @@ public: ~MainWindow(); CreditsDialog *creditsDialog; + RouteSaveDialog *routeSaveDialog; protected: void changeEvent(QEvent *e); @@ -23,6 +25,7 @@ private: Ui::MainWindow *ui; private slots: + void on_pushButtonRoute_clicked(); void on_pushButtonCredits_clicked(); void on_pushButtonWWW_clicked(); }; diff --git a/Client/routesavedialog.cpp b/Client/routesavedialog.cpp index 4082c77..9cbcb45 100644 --- a/Client/routesavedialog.cpp +++ b/Client/routesavedialog.cpp @@ -1,13 +1,35 @@ +/* + * Route save dialog class + * + * @author Toni Jussila + * @copyright (c) 2010 Speed Freak team + * @license http://opensource.org/licenses/gpl-license.php GNU Public License + */ + #include "routesavedialog.h" #include "ui_routesavedialog.h" +/** + *Constructor of this class. + *@param QWidget pointer to parent object. By default the value is NULL. + */ RouteSaveDialog::RouteSaveDialog(QWidget *parent) : QDialog(parent), ui(new Ui::RouteSaveDialog) { ui->setupUi(this); + + ui->labelRouteSatelliteStatus->setVisible(0); + ui->labelRouteSatellitePicture->setVisible(0); + ui->labelRouteSatellitePicture->setPixmap(QPixmap("satellite_vista.png")); + timerSatellitePicture = new QTimer(); + timerSatellitePicture->setInterval(400); + connect(timerSatellitePicture, SIGNAL(timeout()),this, SLOT(timerSatellitePictureTimeout())); } +/** + *Destructor of this class. Deletes all dynamic objects and sets them to NULL. + */ RouteSaveDialog::~RouteSaveDialog() { delete ui; @@ -24,3 +46,44 @@ void RouteSaveDialog::changeEvent(QEvent *e) break; } } + +/** + *This slot function is called when route start/stop button clicked. + */ +void RouteSaveDialog::on_buttonRouteStartStop_clicked() +{ + if ( ui->buttonRouteStartStop->text() == "Start" ) + { + ui->buttonRouteStartStop->setText("Stop"); + ui->labelRouteSatelliteStatus->setText("Searching satellite"); + ui->labelRouteSatelliteStatus->setVisible(1); + ui->labelRouteSatellitePicture->setVisible(1); + timerSatellitePicture->start(); + } + else + { + ui->buttonRouteStartStop->setText("Start"); + ui->labelRouteSatelliteStatus->setVisible(0); + ui->labelRouteSatellitePicture->setVisible(0); + timerSatellitePicture->stop(); + } +} + +/** + *This slot function is called when satellite picture timer timeout(400ms). + */ +void RouteSaveDialog::timerSatellitePictureTimeout() +{ + //If satellite picture visible. + if (ui->labelRouteSatellitePicture->isVisible() == 1) + { + ui->labelRouteSatelliteStatus->setVisible(0); + ui->labelRouteSatellitePicture->setVisible(0); + } + else + { + ui->labelRouteSatelliteStatus->setVisible(1); + ui->labelRouteSatellitePicture->setVisible(1); + } + timerSatellitePicture->start(); +} diff --git a/Client/routesavedialog.h b/Client/routesavedialog.h index de1c382..b4a38f1 100644 --- a/Client/routesavedialog.h +++ b/Client/routesavedialog.h @@ -1,7 +1,17 @@ +/* + * Route save dialog class + * + * @author Toni Jussila + * @copyright (c) 2010 Speed Freak team + * @license http://opensource.org/licenses/gpl-license.php GNU Public License + */ + #ifndef ROUTESAVEDIALOG_H #define ROUTESAVEDIALOG_H #include +#include +#include namespace Ui { class RouteSaveDialog; @@ -18,6 +28,11 @@ protected: private: Ui::RouteSaveDialog *ui; + QTimer *timerSatellitePicture; + +private slots: + void on_buttonRouteStartStop_clicked(); + void timerSatellitePictureTimeout(); }; #endif // ROUTESAVEDIALOG_H diff --git a/Client/routesavedialog.ui b/Client/routesavedialog.ui index a1611d9..d935540 100644 --- a/Client/routesavedialog.ui +++ b/Client/routesavedialog.ui @@ -1,3 +1,4 @@ + RouteSaveDialog @@ -5,13 +6,58 @@ 0 0 - 400 - 300 + 800 + 480 Dialog + + + + 600 + 170 + 130 + 130 + + + + Start + + + + + + 190 + 150 + 100 + 100 + + + + Satellite + + + Qt::AlignCenter + + + + + + 110 + 280 + 251 + 51 + + + + Satellite status + + + Qt::AlignCenter + +