doubleclicking slider sets 100% zoom
authorChristian Pulvermacher <christian@hazel.(none)>
Sun, 24 Oct 2010 20:21:49 +0000 (22:21 +0200)
committerChristian Pulvermacher <christian@hazel.(none)>
Sun, 24 Oct 2010 20:21:49 +0000 (22:21 +0200)
src/mainwindow.cpp
src/mainwindow.h

index b8daaeb..d52cc85 100644 (file)
@@ -65,7 +65,7 @@ MainWindow::MainWindow(QString url, int quality):
        connect(zoom_slider, SIGNAL(valueChanged(int)),
                this, SLOT(setZoomLevel(int)));
        connect(zoom_slider, SIGNAL(sliderReleased()),
-               this, SLOT(forceRepaint()));
+               this, SLOT(zoomSliderReleased()));
        zoom_slider->setValue(settings.value("zoomlevel", 95).toInt());
        toolbar->addWidget(zoom_slider);
 
@@ -378,3 +378,14 @@ void MainWindow::setZoomLevel(int level)
                scroll_area->showMessage(tr("Zoom: %1\%").arg(qRound(100*new_factor)));
        }
 }
+
+void MainWindow::zoomSliderReleased()
+{
+       static QTime time;
+       if(!time.isNull() and time.elapsed() < 700) //double clicked
+               zoom_slider->setValue(95); //100%
+       else 
+               forceRepaint();
+       
+       time.restart();
+}
index 0aa0792..f152f6a 100644 (file)
@@ -50,6 +50,7 @@ public slots:
        void showPreferences();
        void statusChanged(RemoteView::RemoteStatus status);
        void toggleFullscreen();
+       void zoomSliderReleased();
 protected:
        void closeEvent(QCloseEvent*);
        void resizeEvent(QResizeEvent *event);