[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdenonbeta/kwintv3/qtvision
From:       Dirk Ziegelmeier <dirk () ziegelmeier ! net>
Date:       2004-03-10 20:04:18
Message-ID: 20040310200418.0F32699A2 () office ! kde ! org
[Download RAW message or body]

CVS commit by dziegel: 

Finetuning dialog must not block video display


  A            finetuningdlg.ui.h   1.1 [no copyright]
  M +32 -21    channelscanner.cpp   1.32
  M +7 -1      channelscanner.h   1.22
  M +11 -0     finetuningdlg.ui   1.3


--- kdenonbeta/kwintv3/qtvision/channelscanner.cpp  #1.31:1.32
@@ -505,15 +505,21 @@ void ChannelScanner::checkFrequency()
 
     if (isStation) {
-        if ((_freqFactory->needsFineTuning()) && !fineTune()) {
-            scanFrequency();
-            return;
-        }
+        if (_freqFactory->needsFineTuning()) {
+            ftd = new FineTuningDlg(this, "FinetuningDialog", true);
 
-        if (_getNamesFromVBI->isChecked()) {
-            emit progress(i18n("Station found. Waiting for network name..."));
-            // wait for station name to be broadcasted
-            _nameTimer->start(NETWORKNAME_DELAY_MSEC, true);
+            ftd->_slider->setMinValue(_freq - 3000);
+            ftd->_slider->setMaxValue(_freq + 3000);
+            ftd->_slider->setValue   (_freq        );
+            
+            connect(ftd->_slider, SIGNAL( valueChanged(int) ),
+                    this, SLOT( setFrequency(int) ));
+            connect(ftd, SIGNAL( okClicked() ),
+                    this, SLOT( fineTuneOK() ));
+            connect(ftd, SIGNAL( cancelClicked() ),
+                    this, SLOT( fineTuneCancel() ));
+            
+            ftd->show();
         } else {
-            stationFound(true);
+            fineTuningDone();
         }
     } else {
@@ -563,19 +569,24 @@ void ChannelScanner::setNetworkId(const 
 }
 
-bool ChannelScanner::fineTune()
+void ChannelScanner::fineTuneOK()
 {
-    FineTuningDlg d(this, "Finetuning Dialog");
-
-    d._slider->setMinValue(_freq - 3000);
-    d._slider->setMaxValue(_freq + 3000);
-    d._slider->setValue   (_freq        );
+    ftd->deleteLater();
+    fineTuningDone();
+}
 
-    connect(d._slider, SIGNAL( valueChanged(int) ),
-            this, SLOT( setFrequency(int) ));
+void ChannelScanner::fineTuneCancel()
+{
+    ftd->deleteLater();
+    scanFrequency();
+}
 
-    if (d.exec() == QDialog::Accepted) {
-        return true;
+void ChannelScanner::fineTuningDone()
+{
+    if (_getNamesFromVBI->isChecked()) {
+        emit progress(i18n("Station found. Waiting for network name..."));
+        // wait for station name to be broadcasted
+        _nameTimer->start(NETWORKNAME_DELAY_MSEC, true);
     } else {
-        return false;
+        stationFound(true);
     }
 }

--- kdenonbeta/kwintv3/qtvision/channelscanner.h  #1.21:1.22
@@ -41,4 +41,5 @@ class QVVbiPlugin;
 class QTimer;
 class VbiManager;
+class FineTuningDlg;
 
 class ChannelScanner : public ChWizard
@@ -58,5 +59,5 @@ public:
 
 private slots:
-void pageChanged();
+    void pageChanged();
     void updatePageSelection();
     void checkSignalStrengthReadback();
@@ -72,4 +73,6 @@ void pageChanged();
     void setFrequency(int);
 
+    void fineTuneOK();
+    void fineTuneCancel();
 
 private:
@@ -87,4 +90,5 @@ private:
     void stationFound(bool enable);
     void scanningDone(bool success);
+    void fineTuningDone();
 
     ScannerFrequencyFactory* _freqFactory;
@@ -105,4 +109,6 @@ private:
     VbiManager* _vbimgr;
 
+    FineTuningDlg* ftd;
+
     QString _prevDev;
 };

--- kdenonbeta/kwintv3/qtvision/finetuningdlg.ui  #1.2:1.3
@@ -184,4 +184,15 @@
     <tabstop>_slider</tabstop>
 </tabstops>
+<includes>
+    <include location="local" impldecl="in implementation">finetuningdlg.ui.h</include>
+</includes>
+<signals>
+    <signal>okClicked()</signal>
+    <signal>cancelClicked()</signal>
+</signals>
+<functions>
+    <function access="protected">accept()</function>
+    <function access="protected">reject()</function>
+</functions>
 <layoutdefaults spacing="6" margin="11"/>
 </UI>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic