This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/v4l-utils.git tree:

Subject: qv4l2: added resize to frame size in Capture menu
Author:  Bård Eirik Winther <bwint...@cisco.com>
Date:    Thu Aug 8 11:31:25 2013 +0000

This will resize the CaptureWin to the original frame size.
It also works with maximized windows.

Signed-off-by: Bård Eirik Winther <bwint...@cisco.com>
Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>

 utils/qv4l2/capture-win.cpp |   12 ++++++++++++
 utils/qv4l2/capture-win.h   |    3 +++
 utils/qv4l2/qv4l2.cpp       |    6 ++++--
 utils/qv4l2/qv4l2.h         |    1 +
 4 files changed, 20 insertions(+), 2 deletions(-)

---

http://git.linuxtv.org/v4l-utils.git?a=commitdiff;h=96bb0b2c86902250145ae0295b25d1a68c2b4cc3

diff --git a/utils/qv4l2/capture-win.cpp b/utils/qv4l2/capture-win.cpp
index 33f7084..3bd6549 100644
--- a/utils/qv4l2/capture-win.cpp
+++ b/utils/qv4l2/capture-win.cpp
@@ -61,6 +61,18 @@ void CaptureWin::buildWindow(QWidget *videoSurface)
        vbox->setSpacing(b);
 }
 
+void CaptureWin::resetSize()
+{
+       if (isMaximized())
+               showNormal();
+
+       int w = m_curWidth;
+       int h = m_curHeight;
+       m_curWidth = -1;
+       m_curHeight = -1;
+       resize(w, h);
+}
+
 QSize CaptureWin::getMargins()
 {
        int l, t, r, b;
diff --git a/utils/qv4l2/capture-win.h b/utils/qv4l2/capture-win.h
index dd19f2d..eea0335 100644
--- a/utils/qv4l2/capture-win.h
+++ b/utils/qv4l2/capture-win.h
@@ -78,6 +78,9 @@ public:
        void enableScaling(bool enable);
        static QSize scaleFrameSize(QSize window, QSize frame);
 
+public slots:
+       void resetSize();
+
 protected:
        void closeEvent(QCloseEvent *event);
        void buildWindow(QWidget *videoSurface);
diff --git a/utils/qv4l2/qv4l2.cpp b/utils/qv4l2/qv4l2.cpp
index 6258a93..3da99da 100644
--- a/utils/qv4l2/qv4l2.cpp
+++ b/utils/qv4l2/qv4l2.cpp
@@ -142,11 +142,14 @@ ApplicationWindow::ApplicationWindow() :
        m_scalingAct->setCheckable(true);
        m_scalingAct->setChecked(true);
        connect(m_scalingAct, SIGNAL(toggled(bool)), this, 
SLOT(enableScaling(bool)));
+       m_resetScalingAct = new QAction("Resize to Frame Size", this);
+       m_resetScalingAct->setStatusTip("Resizes the capture window to match 
frame size");
 
        QMenu *captureMenu = menuBar()->addMenu("&Capture");
        captureMenu->addAction(m_capStartAct);
        captureMenu->addAction(m_showFramesAct);
        captureMenu->addAction(m_scalingAct);
+       captureMenu->addAction(m_resetScalingAct);
 
        if (CaptureWinGL::isSupported()) {
                m_renderMethod = QV4L2_RENDER_GL;
@@ -211,8 +214,6 @@ void ApplicationWindow::setDevice(const QString &device, 
bool rawOpen)
 
        newCaptureWin();
 
-       m_capture->setMinimumSize(150, 50);
-
        QWidget *w = new QWidget(m_tabs);
        m_genTab = new GeneralTab(device, *this, 4, w);
 
@@ -360,6 +361,7 @@ void ApplicationWindow::newCaptureWin()
 
        m_capture->enableScaling(m_scalingAct->isChecked());
         connect(m_capture, SIGNAL(close()), this, SLOT(closeCaptureWin()));
+       connect(m_resetScalingAct, SIGNAL(triggered()), m_capture, 
SLOT(resetSize()));
 }
 
 void ApplicationWindow::capVbiFrame()
diff --git a/utils/qv4l2/qv4l2.h b/utils/qv4l2/qv4l2.h
index 1402673..179cecb 100644
--- a/utils/qv4l2/qv4l2.h
+++ b/utils/qv4l2/qv4l2.h
@@ -187,6 +187,7 @@ private:
        QAction *m_showAllAudioAct;
        QAction *m_audioBufferAct;
        QAction *m_scalingAct;
+       QAction *m_resetScalingAct;
        QString m_filename;
        QSignalMapper *m_sigMapper;
        QTabWidget *m_tabs;

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to