diff options
author | Roopesh Chander <roop@forwardbias.in> | 2009-11-03 20:50:05 +0530 |
---|---|---|
committer | Roopesh Chander <roop@forwardbias.in> | 2009-11-03 20:50:05 +0530 |
commit | 2e32f3afc08338d7657d87a670a6da7e811f2d4a (patch) | |
tree | 9cfe70bc125d735f3bf3bf938b3347996b86528f /mainwindow.cpp | |
parent | 3f963c16c47c99a6ae9377d83401395fd5bc267a (diff) |
handle zvalue a bit more predictably
Diffstat (limited to 'mainwindow.cpp')
-rw-r--r-- | mainwindow.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/mainwindow.cpp b/mainwindow.cpp index 455d50f..3a6e434 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -55,6 +55,8 @@ void MainWindow::addScrap(QUrl url, QRect scrapRect, QPoint position, qreal xSca m_dropDownList->addItem(QWebSettings::iconForUrl(url), url.toString(), qVariantFromValue(container)); connect(webscrap, SIGNAL(loadFinished(bool)), SLOT(updateDropDownList())); m_scraps << container; + container->setZValue(m_scraps.count()); + bubbleUpScrap(container); } void MainWindow::initBrowser() { @@ -88,7 +90,7 @@ void MainWindow::createScrapsToolbar(QGraphicsScene *scene) { m_scrapsToolbar->addWidget(m_searchBar); m_scrapsToolbar->addWidget(m_gotoBrowserButton); m_scrapsToolbar->setPos(600, 50); - m_scrapsToolbar->setZValue(1000); + m_scrapsToolbar->setZValue(10000); connect(m_dropDownList, SIGNAL(activated(int)), SLOT(scrapDropDownListActivated(int))); connect(m_searchBar, SIGNAL(textChanged(QString)), SLOT(searchTextChanged(QString))); @@ -125,7 +127,7 @@ void MainWindow::createBrowserToolbar(QGraphicsScene *scene) { m_addressBar->setMinimumWidth(200); m_browserToolbar->setPos(200, 0); - m_browserToolbar->setZValue(1000); + m_browserToolbar->setZValue(10000); connect(m_selectScrapsButton, SIGNAL(clicked(bool)), m_webView, SLOT(setScrapSelectionEnabled(bool))); connect(m_addressBar, SIGNAL(returnPressed()), SLOT(changeLocation())); @@ -268,10 +270,10 @@ void MainWindow::bubbleUpScrap(QGraphicsWidget *scrap) { scrap = qobject_cast<QGraphicsWidget*>(sender()); if (scrap) { foreach(QGraphicsWidget *s, m_scraps) { - if (s == scrap) - s->setZValue(100); - else - s->setZValue(1); + if (s == scrap && s->zValue() < 1000) + s->setZValue(s->zValue() + 1000); + if (s != scrap && s->zValue() > 1000) + s->setZValue(s->zValue() - 1000); } } } @@ -279,10 +281,10 @@ void MainWindow::bubbleUpScrap(QGraphicsWidget *scrap) { void MainWindow::bubbleUpScraps(QList<QGraphicsWidget*> scraps) { if (!scraps.isEmpty()) { foreach(QGraphicsWidget *s, m_scraps) { - if (scraps.contains(s)) - s->setZValue(100); - else - s->setZValue(1); + if (scraps.contains(s) && s->zValue() < 1000) + s->setZValue(s->zValue() + 1000); + if (!scraps.contains(s) && s->zValue() > 1000) + s->setZValue(s->zValue() - 1000); } } } |