summaryrefslogtreecommitdiffstats
path: root/mainwindow.cpp
diff options
context:
space:
mode:
authorunknown <Roopesh Chander@.(none)>2009-11-10 22:01:35 +0530
committerunknown <Roopesh Chander@.(none)>2009-11-10 22:01:35 +0530
commit29eee9e8fcd6cebe62e3aa4834f9abbfc4154d6e (patch)
tree4aa0c92d43f79def663ddfb44b6f6c2b805233ad /mainwindow.cpp
parent91c58d48c0c97c71a8a1c7784a781b4ae84b4c95 (diff)
make it more readable. some refactoring, a little commenting
Diffstat (limited to 'mainwindow.cpp')
-rw-r--r--mainwindow.cpp62
1 files changed, 26 insertions, 36 deletions
diff --git a/mainwindow.cpp b/mainwindow.cpp
index 3fab46c..0ec8008 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -15,33 +15,35 @@
#include "webscrap.h"
#include "searchlineedit.h"
-MainWindow::MainWindow(QWidget *parent) :
- GraphicsView(parent)
+MainWindow::MainWindow(QWidget *parent)
+ : GraphicsView(parent)
+ , m_settings(new QSettings("Nokia", "WebScraps", this))
{
- initGraphicsView();
- initScrapBoard();
- initBrowser();
+ setScene(new QGraphicsScene);
+ setMouseTracking(true);
+ setBackgroundBrush(Qt::black);
- m_webView->setVisible(false);
- m_browserToolbar->setVisible(false);
- m_scrapsToolbar->setVisible(false);
- adjustTitle();
- createAnimations();
+ initBrowser(); // create the browser
+ createBrowserToolbar(scene());
+ connect(m_webView->page(), SIGNAL(loadProgress(int)), m_browserToolbar, SLOT(setFillLevel(int)));
- m_settings = new QSettings("Nokia", "WebScraps", this);
- loadSettings();
- setBackgroundBrush(Qt::black);
+ createAnimations();
+ createScrapsToolbar(scene());
+ loadSettings(); // load the saved scraps and add them to the animations
+ // init states
QState *seeScraps = new QState;
QState *browseWeb = new QState;
m_stateMachine.addState(seeScraps);
m_stateMachine.addState(browseWeb);
m_stateMachine.setInitialState(seeScraps);
+ // define transitions
QSignalTransition *transitionToBrowser = seeScraps->addTransition(m_gotoBrowserButton, SIGNAL(clicked()), browseWeb);
QSignalTransition *transitionToScraps = browseWeb->addTransition(m_gotoScrapsButton, SIGNAL(clicked()), seeScraps);
QSignalTransition *transitionToScraps2 = browseWeb->addTransition(m_webView, SIGNAL(scrapAdded(QUrl,QSize,QRect,QPoint)), seeScraps);
+ // associate animations and actions
transitionToBrowser->addAnimation(m_scrapsToBrowserAnimation);
transitionToScraps->addAnimation(m_browserToScrapsAnimation);
transitionToScraps2->addAnimation(m_browserToScrapsAnimation);
@@ -59,18 +61,6 @@ MainWindow::MainWindow(QWidget *parent) :
m_stateMachine.start();
}
-void MainWindow::initGraphicsView() {
- setMouseTracking(true);
- QGraphicsScene *gs = new QGraphicsScene;
- setScene(gs);
-}
-
-void MainWindow::initScrapBoard() {
- QGraphicsScene *gs = scene();
-
- createScrapsToolbar(gs);
-}
-
void MainWindow::addScrap(QUrl url, QSize pageSize,
QRect scrapRect, QPoint position,
qreal xScale, qreal yScale,
@@ -92,20 +82,18 @@ void MainWindow::addScrap(QUrl url, QSize pageSize,
void MainWindow::initBrowser() {
m_webView = new WebView(scene());
+ m_webView->hide();
m_webView->setZValue(-1);
setCentralWidget(m_webView);
- m_webView->load(QUrl("http://news.google.com/"));
+ m_webView->load(QUrl("http://qt.nokia.com/"));
connect(m_webView, SIGNAL(loadFinished(bool)), SLOT(adjustLocation()));
connect(m_webView, SIGNAL(titleChanged(const QString&)), SLOT(adjustTitle()));
connect(m_webView, SIGNAL(scrapAdded(QUrl,QSize,QRect,QPoint)), SLOT(addScrap(QUrl, QSize, QRect, QPoint)));
- createBrowserToolbar(scene());
- m_browserToolbar->setBackgroundBrush(QColor(50, 50, 200, 50));
- m_browserToolbar->setFillLevelBrush(palette().background());
- connect(m_webView->page(), SIGNAL(loadProgress(int)), m_browserToolbar, SLOT(setFillLevel(int)));
}
void MainWindow::createScrapsToolbar(QGraphicsScene *scene) {
m_scrapsToolbar = new GraphicsToolBar(scene);
+ m_scrapsToolbar->hide();
m_dropDownList = new QComboBox;
m_dropDownList->setMinimumContentsLength(25);
m_dropDownList->addItem(tr("Locate"), 0);
@@ -120,7 +108,7 @@ void MainWindow::createScrapsToolbar(QGraphicsScene *scene) {
m_scrapsToolbar->addWidget(m_dropDownList);
m_scrapsToolbar->addWidget(m_searchBar);
m_scrapsToolbar->addWidget(m_gotoBrowserButton);
- m_scrapsToolbar->setPos(600, 50);
+ m_scrapsToolbar->setPos(325, 5);
m_scrapsToolbar->setZValue(10000);
m_scrapsToolbar->setBackgroundBrush(palette().background());
@@ -130,6 +118,7 @@ void MainWindow::createScrapsToolbar(QGraphicsScene *scene) {
void MainWindow::createBrowserToolbar(QGraphicsScene *scene) {
m_browserToolbar = new GraphicsToolBar(scene);
+ m_browserToolbar->hide();
m_addressBar = new QLineEdit;
m_selectScrapsButton = new QToolButton;
m_selectScrapsButton->setIcon(QIcon(":/icons/cutscrap.png"));
@@ -157,9 +146,12 @@ void MainWindow::createBrowserToolbar(QGraphicsScene *scene) {
m_browserToolbar->addWidget(m_gotoScrapsButton);
m_addressBar->setMinimumWidth(200);
- m_browserToolbar->setPos(200, 0);
+ m_browserToolbar->setPos(325, 5);
m_browserToolbar->setZValue(10000);
+ m_browserToolbar->setBackgroundBrush(QColor(50, 50, 200, 50));
+ m_browserToolbar->setFillLevelBrush(palette().background());
+
connect(m_selectScrapsButton, SIGNAL(clicked(bool)), m_webView, SLOT(setScrapSelectionEnabled(bool)));
connect(m_addressBar, SIGNAL(returnPressed()), SLOT(changeLocation()));
}
@@ -192,8 +184,8 @@ void MainWindow::adjustTitle()
}
void MainWindow::createAnimations() {
- m_scrapsEnter = new QParallelAnimationGroup(this);
- m_scrapsLeave = new QParallelAnimationGroup(this);
+ m_scrapsEnter = new QParallelAnimationGroup(this); // scraps will be added to this later
+ m_scrapsLeave = new QParallelAnimationGroup(this); // scraps will be added to this later
QAbstractAnimation *browserEnter = createBrowserAnim(Enter, this);
QAbstractAnimation *browserLeave = createBrowserAnim(Leave, this);
@@ -419,8 +411,6 @@ void MainWindow::loadSettings() {
QRect(5, 174, 667, 257), QPoint(543,363), 0.6, 0.6);
resize(950, 540);
}
- m_scrapsToolbar->setPos(325, 5);
- m_browserToolbar->setPos(325, 5);
m_settings->endArray();
}