Beispiel #1
0
LocationTracker::LocationTracker()
	: m_latitude(0)
	, m_longitude(0)
{

	//Creo la source para geoposici—n
	src = QGeoPositionInfoSource::createDefaultSource(this);

	if (src){
		src->setPreferredPositioningMethods(QGeoPositionInfoSource::AllPositioningMethods);
		src->setUpdateInterval(15000); //15 segundos de update

		// Connect the positionUpdated() signal to a
		// slot that handles position updates.
		connect(src,
				SIGNAL(positionUpdated(const QGeoPositionInfo &)),
				this,
				SLOT(positionUpdated(const QGeoPositionInfo &)));

		connect(src,
				SIGNAL(updateTimeout()),
				this,
				SLOT(positionUpdateTimeout()));
	}
}
FoursquareVenueSelectionPage::FoursquareVenueSelectionPage(QGraphicsItem *parent)
	: SelectionPage(parent),
	  m_geosource(QGeoPositionInfoSource::createDefaultSource(this)),
	  m_model(new FoursquareVenueSelectionPageListModel(this)),
	  m_storage(FoursquareAuthStorage::storage())
{
	if (m_geosource == NULL) {
		mDebug(__func__) << "Cannot set up geoposition source. ";
	} else {
		mDebug(__func__) << "Starting geoposition lookup. ";
		connect(m_geosource, 
			SIGNAL(positionUpdated(const QGeoPositionInfo &)),
			this, 
			SLOT(positionUpdated(const QGeoPositionInfo &)));
		connect(m_geosource, 
			SIGNAL(updateTimeout()),
			this, 
			SLOT(positionUpdateTimeout()));
		m_geosource->startUpdates();
	}

	connect(m_model, 
		SIGNAL(ready(enum FoursquareVenueSearch::SearchStatus)), 
		this, 
		SLOT(itemsReady(enum FoursquareVenueSearch::SearchStatus)));

	connect(this, SIGNAL(created()), 
		this, SLOT(activate()),
		Qt::QueuedConnection);
}