Locations::Locations()
{
- if ( !initialised ) {
- QCoreApplication::setOrganizationName("ZouBa");
- QCoreApplication::setOrganizationDomain("zouba.yi.org");
+ if (!initialised) {
+ qDebug() << "Initialising locations";
+ QCoreApplication::setOrganizationDomain("zouba.maemo.org");
QCoreApplication::setOrganizationName("ZouBa");
+ QCoreApplication::setApplicationName("ZouBa");
restoreLocations();
initialised = true;
{
}
-bool Locations::addLocation( Location *location )
+bool Locations::addLocation(Location *location)
{
- bool succeeded=false;
-
- // if it's valid now, save the setting
- if ( location->isValid() ) {
- saveLocation( location );
- }
-
- if ( !locationHash.contains( location->label() ) ) {
- qDebug() << "Adding location" << location->label();
- locationHash[ location->label() ] = location;
- succeeded = true;
- } else {
- qDebug() << "FAILED to add location" << location->label();
- }
-
- return succeeded;
+ bool succeeded=false;
+
+ // if it's valid now, save the setting
+ if (location->isValid()) {
+ saveLocation(location);
+ } else {
+ qDebug() << "Location not valid, so not saving";
+ }
+
+ if (!locationHash.contains(location->label())) {
+ qDebug() << "Adding location" << location->label();
+ locationHash[ location->label() ] = location;
+ succeeded = true;
+ } else {
+ qDebug() << "FAILED to add location" << location->label();
+ }
+
+ return succeeded;
}
void Locations::restoreLocations()
{
- QSettings settings;
+ QSettings settings;
- settings.beginGroup( "Locations" );
- QStringList labels = settings.childGroups();
+ settings.beginGroup("Locations");
+ QStringList labels = settings.childGroups();
- for( int i=0; i<labels.size(); ++i ) {
- QString label = labels[i];
- settings.beginGroup( label );
- QString x = settings.value( "x" ).toString();
- QString y = settings.value( "y" ).toString();
- QString address = settings.value( "address" ).toString();
- settings.endGroup();
+ for(int i=0; i<labels.size(); ++i) {
+ QString label = labels[i];
+ settings.beginGroup(label);
+ QString longitude = settings.value("longitude").toString();
+ QString latitude = settings.value("latitude").toString();
+ QString address = settings.value("address").toString();
+ settings.endGroup();
- qDebug() << "restoring" << label;
- Location *location = new Location( x, y, label );
- location->setAddress( address );
+ qDebug() << "restoring" << label;
+ Location *location = new Location(longitude, latitude , label);
+ location->setAddress(address);
- locationHash[ label ] = location;
- }
+ locationHash[ label ] = location;
+ }
- settings.endGroup();
+ settings.endGroup();
}
-void Locations::saveLocation( Location *location )
+void Locations::saveLocation(Location *location)
{
- qDebug() << "Saving location" << location->label();
- QSettings settings;
- settings.beginGroup( "Locations" );
- settings.beginGroup( location->label() );
- settings.setValue( "address", location->address() );
- settings.setValue( "x", location->x() );
- settings.setValue( "y", location->y() );
- settings.endGroup();
- settings.endGroup();
+ qDebug() << "Saving location" << location->label();
+ QSettings settings;
+ settings.beginGroup("Locations");
+ settings.beginGroup(location->label());
+ settings.setValue("address", location->address());
+ settings.setValue("longitude", location->longitude());
+ settings.setValue("latitude", location->latitude());
+ settings.endGroup();
+ settings.endGroup();
}
void Locations::saveLocation()
{
- Location *location = qobject_cast<Location*>(sender());
+ qDebug() << "Saving location (slot)";
+ Location *location = qobject_cast<Location*>(sender());
- saveLocation( location );
+ saveLocation(location);
}
-Location *Locations::location( const QString &label )
+Location *Locations::location(const QString &label)
{
- qDebug() << "requesting location" << label;
- Location *retVal = 0;
-
- if ( locationHash.contains( label ) ) {
- qDebug() << "found location" << label;
- retVal = locationHash[ label ];
- } else {
- qDebug() << "didn't find location" << label;
- }
+ qDebug() << "requesting location" << label;
+ Location *retVal = 0;
+
+ if (locationHash.contains(label)) {
+ qDebug() << "found location" << label;
+ retVal = locationHash[ label ];
+ } else {
+ qDebug() << "didn't find location" << label;
+ }
- return retVal;
+ return retVal;
}