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 5dae549..0b8a938 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)));
 }
@@ -294,6 +295,16 @@ int QDeclarativeRadio::maximumFrequency() const
 }
 
 /*!
+    \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()
 
     Returns whether the radio is ready to use.
index e029fb4..d16f248 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 ea0bfc5..c86a0a1 100644 (file)
@@ -235,6 +235,14 @@ QRadioTunerControl::~QRadioTunerControl()
 */
 
 /*!
+    \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()
 
     Starts a forward scan for a signal, starting from the current \l frequency().
@@ -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 5128fde..354e9c2 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 ab5f228..e0aeaa2 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)));
         }
     }
@@ -431,6 +432,20 @@ bool QRadioTuner::isSearching() const
 }
 
 /*!
+    \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.
 
     \sa searchBackward(), cancelSearch(), searching
index 9236de9..46c6cfe 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);