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: use setResdOnly for disabled QLineEdit controls
Author:  Hans Verkuil <[email protected]>
Date:    Sun Jul 27 22:27:07 2014 +0200

This allows you to copy-and-paste the text and to scroll through
it if the text is longer than the widget.

Signed-off-by: Hans Verkuil <[email protected]>

 utils/qv4l2/ctrl-tab.cpp |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

---

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

diff --git a/utils/qv4l2/ctrl-tab.cpp b/utils/qv4l2/ctrl-tab.cpp
index 2277607..bd023aa 100644
--- a/utils/qv4l2/ctrl-tab.cpp
+++ b/utils/qv4l2/ctrl-tab.cpp
@@ -375,7 +375,10 @@ void ApplicationWindow::addCtrl(QGridLayout *grid, const 
v4l2_query_ext_ctrl &qe
 
        m_sigMapper->setMapping(m_widgetMap[qec.id], qec.id);
        if (qec.flags & CTRL_FLAG_DISABLED) {
-               m_widgetMap[qec.id]->setDisabled(true);
+               if (qobject_cast<QLineEdit *>(m_widgetMap[qec.id]))
+                       static_cast<QLineEdit 
*>(m_widgetMap[qec.id])->setReadOnly(true);
+               else
+                       m_widgetMap[qec.id]->setDisabled(true);
                if (m_sliderMap.find(qec.id) != m_sliderMap.end())
                        m_sliderMap[qec.id]->setDisabled(true);
        }
@@ -674,9 +677,15 @@ void ApplicationWindow::refresh(unsigned ctrl_class)
                        }
                        else
                                setVal(id, c[i].value);
-                       m_widgetMap[id]->setDisabled(m_ctrlMap[id].flags & 
CTRL_FLAG_DISABLED);
+
+                       bool disabled = m_ctrlMap[id].flags & 
CTRL_FLAG_DISABLED;
+
+                       if (qobject_cast<QLineEdit *>(m_widgetMap[id]))
+                               static_cast<QLineEdit 
*>(m_widgetMap[id])->setReadOnly(disabled);
+                       else
+                               m_widgetMap[id]->setDisabled(disabled);
                        if (m_sliderMap.find(id) != m_sliderMap.end())
-                               
m_sliderMap[id]->setDisabled(m_ctrlMap[id].flags & CTRL_FLAG_DISABLED);
+                               m_sliderMap[id]->setDisabled(disabled);
                }
        }
        delete [] c;

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to