WebGeolocationProviderQt.h [plain text]
#ifndef WebGeolocationProviderQt_h
#define WebGeolocationProviderQt_h
#include <QObject>
#include <WebKit2/WKGeolocationManager.h>
#include <WebKit2/WKGeolocationPosition.h>
#include <WebKit2/WKRetainPtr.h>
class QGeoPositionInfoSource;
class QGeoPositionInfo;
namespace WebKit {
class WebGeolocationProviderQt : public QObject {
Q_OBJECT
public:
static WebGeolocationProviderQt* create(WKGeolocationManagerRef);
static WKGeolocationProvider* provider(const WebGeolocationProviderQt*);
virtual ~WebGeolocationProviderQt();
void startUpdating() const;
void stopUpdating() const;
public Q_SLOTS:
void updateTimeout();
void positionUpdated(const QGeoPositionInfo&);
private:
Q_DISABLE_COPY(WebGeolocationProviderQt);
WebGeolocationProviderQt(WKGeolocationManagerRef);
WKGeolocationManagerRef m_manager;
WKRetainPtr<WKGeolocationPositionRef> m_lastPosition;
mutable QGeoPositionInfoSource* m_source;
};
}
#endif