Added antennaConnected property to QRadioTuner and radio qml element
authorJonas Rabbe <jonas.rabbe@nokia.com>
Mon, 30 Jan 2012 03:53:30 +0000 (13:53 +1000)
committerQt by Nokia <qt-info@nokia.com>
Mon, 30 Jan 2012 20:32:18 +0000 (21:32 +0100)
Change-Id: I5af8487277e0444629c710c6a0a4e890a8d35c6f
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
src/imports/multimedia/qdeclarativeradio.cpp
src/imports/multimedia/qdeclarativeradio_p.h
src/multimedia/controls/qradiotunercontrol.cpp
src/multimedia/controls/qradiotunercontrol.h
src/multimedia/radio/qradiotuner.cpp
src/multimedia/radio/qradiotuner.h

index 5dae549f2e12e9bdf4e5da03a5d64069bb8f170b..0b8a9386cd840c27dd689af141b10e096a304773 100644 (file)
@@ -109,6 +109,7 @@ QDeclarativeRadio::QDeclarativeRadio(QObject *parent) :
     connect(m_radioTuner, SIGNAL(volumeChanged(int)), this, SIGNAL(volumeChanged(int)));
     connect(m_radioTuner, SIGNAL(mutedChanged(bool)), this, SIGNAL(mutedChanged(bool)));
     connect(m_radioTuner, SIGNAL(stationFound(int, QString)), this, SIGNAL(stationFound(int, QString)));
+    connect(m_radioTuner, SIGNAL(antennaConnectedChanged(bool)), this, SIGNAL(antennaConnectedChanged(bool)));
 
     connect(m_radioTuner, SIGNAL(error(QRadioTuner::Error)), this, SLOT(_q_error(QRadioTuner::Error)));
 }
@@ -293,6 +294,16 @@ int QDeclarativeRadio::maximumFrequency() const
     return m_radioTuner->frequencyRange(m_radioTuner->band()).second;
 }
 
+/*!
+    \qmlproperty int Radio::antennaConnected
+
+    This property is true if there is an antenna connected. Otherwise it will be false.
+ */
+bool QDeclarativeRadio::isAntennaConnected() const
+{
+    return m_radioTuner->isAntennaConnected();
+}
+
 /*!
     \qmlmethod bool Radio::isAvailable()
 
index e029fb44dcadffe65af55704c29c61a71c86765d..d16f2488ef626057bad373de8287c4833b9cd8f4 100644 (file)
@@ -75,6 +75,7 @@ class QDeclarativeRadio : public QObject
     Q_PROPERTY(int frequencyStep READ frequencyStep NOTIFY bandChanged)
     Q_PROPERTY(int minimumFrequency READ minimumFrequency NOTIFY bandChanged)
     Q_PROPERTY(int maximumFrequency READ maximumFrequency NOTIFY bandChanged)
+    Q_PROPERTY(bool antennaConnected READ isAntennaConnected NOTIFY antennaConnectedChanged)
     Q_ENUMS(State)
     Q_ENUMS(Band)
     Q_ENUMS(Error)
@@ -131,6 +132,8 @@ public:
     int minimumFrequency() const;
     int maximumFrequency() const;
 
+    bool isAntennaConnected() const;
+
     Q_INVOKABLE bool isAvailable() const;
 
 public Q_SLOTS:
@@ -160,6 +163,7 @@ Q_SIGNALS:
     void volumeChanged(int volume);
     void mutedChanged(bool muted);
     void stationFound(int frequency, QString stationId);
+    void antennaConnectedChanged(bool connectionStatus);
 
     void errorChanged();
     void error(QDeclarativeRadio::Error errorCode);
index ea0bfc579f3d983b327e44e83aab3a1524ea8057..c86a0a1ccebead802282458313bc54e89ca27982 100644 (file)
@@ -234,6 +234,14 @@ QRadioTunerControl::~QRadioTunerControl()
     Returns true if the tuner is scanning, and false if it is not.
 */
 
+/*!
+    \fn bool QRadioTunerControl::antennaConnected() const
+
+    Identifies if there is an antenna connected to the device.
+
+    Returns true if there is a connected antenna, and false otherwise.
+*/
+
 /*!
     \fn  void QRadioTunerControl::searchForward()
 
@@ -337,6 +345,13 @@ QRadioTunerControl::~QRadioTunerControl()
     Signals that new station with \a frequency was found when scanning
 */
 
+/*!
+    \fn void QRadioTunerControl::antennaConnectedChanged(bool connectionStatus)
+
+    Signals that the antenna has either been connected or disconnected as
+    reflected with the \a connectionStatus.
+*/
+
 #include "moc_qradiotunercontrol.cpp"
 QT_END_NAMESPACE
 
index 5128fdeb4ba358fae2ced6eb98aff7e7f343a67d..354e9c2f1859df8663639832e94e84f025cff26e 100644 (file)
@@ -87,6 +87,8 @@ public:
 
     virtual bool isSearching() const = 0;
 
+    virtual bool isAntennaConnected() const { return true; }
+
     virtual void searchForward() = 0;
     virtual void searchBackward() = 0;
     virtual void searchAllStations(QRadioTuner::SearchMode searchMode = QRadioTuner::SearchFast) = 0;
@@ -109,6 +111,7 @@ Q_SIGNALS:
     void mutedChanged(bool muted);
     void error(QRadioTuner::Error err);
     void stationFound(int frequency, QString stationId);
+    void antennaConnectedChanged(bool connectionStatus);
 
 protected:
     QRadioTunerControl(QObject *parent = 0);
index ab5f228a638d6527b17dbe8f41dd65303f4c8c1c..e0aeaa2c546161865cded0cc97f3e444c70e9d4f 100644 (file)
@@ -128,6 +128,7 @@ QRadioTuner::QRadioTuner(QObject *parent):
             connect(d->control, SIGNAL(volumeChanged(int)), SIGNAL(volumeChanged(int)));
             connect(d->control, SIGNAL(mutedChanged(bool)), SIGNAL(mutedChanged(bool)));
             connect(d->control, SIGNAL(stationFound(int,QString)), SIGNAL(stationFound(int,QString)));
+            connect(d->control, SIGNAL(antennaConnectedChanged(bool)), SIGNAL(antennaConnectedChanged(bool)));
             connect(d->control, SIGNAL(error(QRadioTuner::Error)), SIGNAL(error(QRadioTuner::Error)));
         }
     }
@@ -430,6 +431,20 @@ bool QRadioTuner::isSearching() const
     return false;
 }
 
+/*!
+    \property QRadioTuner::antennaConnected
+    \brief whether there is an antenna connected
+*/
+bool QRadioTuner::isAntennaConnected() const
+{
+    Q_D(const QRadioTuner);
+
+    if (d->control != 0)
+        return d->control->isAntennaConnected();
+
+    return false;
+}
+
 /*!
     Starts a forward scan for a signal, starting from the current \l frequency.
 
index 9236de98e515411f25872dcc6d9bd818fbd067a0..46c6cfeb1c94fe533e1b347d8545e0ae3d401bb2 100644 (file)
@@ -69,6 +69,7 @@ class Q_MULTIMEDIA_EXPORT QRadioTuner : public QMediaObject
     Q_PROPERTY(int volume READ volume WRITE setVolume NOTIFY volumeChanged)
     Q_PROPERTY(bool muted READ isMuted WRITE setMuted NOTIFY mutedChanged)
     Q_PROPERTY(bool searching READ isSearching NOTIFY searchingChanged)
+    Q_PROPERTY(bool antennaConnected READ isAntennaConnected NOTIFY antennaConnectedChanged)
     Q_ENUMS(State)
     Q_ENUMS(Band)
     Q_ENUMS(Error)
@@ -109,6 +110,8 @@ public:
 
     bool isSearching() const;
 
+    bool isAntennaConnected() const;
+
     Error error() const;
     QString errorString() const;
 
@@ -137,6 +140,7 @@ Q_SIGNALS:
     void volumeChanged(int volume);
     void mutedChanged(bool muted);
     void stationFound(int frequency, QString stationId);
+    void antennaConnectedChanged(bool connectionStatus);
 
     void error(QRadioTuner::Error error);