diff options
Diffstat (limited to 'src/imports/location/qdeclarativegeoserviceprovider_p.h')
-rw-r--r-- | src/imports/location/qdeclarativegeoserviceprovider_p.h | 70 |
1 files changed, 48 insertions, 22 deletions
diff --git a/src/imports/location/qdeclarativegeoserviceprovider_p.h b/src/imports/location/qdeclarativegeoserviceprovider_p.h index 984e729c..d88b3b60 100644 --- a/src/imports/location/qdeclarativegeoserviceprovider_p.h +++ b/src/imports/location/qdeclarativegeoserviceprovider_p.h @@ -7,29 +7,29 @@ ** This file is part of the Qt Mobility Components. ** ** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** ** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception +** rights. These rights are described in the Nokia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 as published by the Free Software Foundation -** and appearing in the file LICENSE.GPL included in the packaging of this -** file. Please review the following information to ensure the GNU General -** Public License version 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** ** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. ** ** ** @@ -77,38 +77,64 @@ private: QVariant value_; }; -class QDeclarativeGeoServiceProvider : public QObject +class QDeclarativeGeoServiceProvider : public QObject, public QDeclarativeParserStatus { Q_OBJECT - Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + Q_PROPERTY(QStringList availableServiceProviders READ availableServiceProviders CONSTANT) Q_PROPERTY(QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> parameters READ parameters) - + Q_PROPERTY(bool supportsGeocoding READ supportsGeocoding NOTIFY supportsGeocodingChanged) + Q_PROPERTY(bool supportsReverseGeocoding READ supportsReverseGeocoding NOTIFY supportsReverseGeocodingChanged) + Q_PROPERTY(bool supportsRouting READ supportsRouting NOTIFY supportsRoutingChanged) + Q_PROPERTY(bool supportsMapping READ supportsMapping NOTIFY supportsMappingChanged) Q_CLASSINFO("DefaultProperty", "parameters") + Q_INTERFACES(QDeclarativeParserStatus) public: QDeclarativeGeoServiceProvider(QObject *parent = 0); ~QDeclarativeGeoServiceProvider(); + // From QDeclarativeParserStatus + virtual void classBegin() {} + virtual void componentComplete(); + void setName(const QString &name); QString name() const; QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> parameters(); - QMap<QString, QVariant> parameterMap() const; + QStringList availableServiceProviders(); + bool supportsGeocoding() const; + bool supportsReverseGeocoding() const; + bool supportsRouting() const; + bool supportsMapping() const; + Q_SIGNALS: void nameChanged(const QString &name); + void supportsGeocodingChanged(); + void supportsReverseGeocodingChanged(); + void supportsRoutingChanged(); + void supportsMappingChanged(); private: static void parameter_append(QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> *prop, QDeclarativeGeoServiceProviderParameter *mapObject); static int parameter_count(QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> *prop); static QDeclarativeGeoServiceProviderParameter* parameter_at(QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> *prop, int index); static void parameter_clear(QDeclarativeListProperty<QDeclarativeGeoServiceProviderParameter> *prop); + void updateSupportStatus(); + void setSupportsGeocoding(bool supports); + void setSupportsReverseGeocoding(bool supports); + void setSupportsRouting(bool supports); + void setSupportsMapping(bool supports); QString name_; QList<QDeclarativeGeoServiceProviderParameter*> parameters_; - + bool supportsGeocoding_; + bool supportsReverseGeocoding_; + bool supportsRouting_; + bool supportsMapping_; + bool complete_; Q_DISABLE_COPY(QDeclarativeGeoServiceProvider) }; |