[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kstars-devel
Subject:    [Kstars-devel] branches/kstars/summer/kstars/kstars/comast
From:       Prakash Mohan <prak902000 () gmail ! com>
Date:       2009-08-07 17:16:49
Message-ID: 1249665409.375453.26289.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1008508 by prakash:

Use an inbuilt id for a site, instead of the location's full name.

CCMAIL: kstars-devel@kde.org


 M  +12 -8     execute.cpp  
 M  +1 -1      execute.h  
 M  +11 -4     log.cpp  
 M  +3 -2      log.h  
 M  +4 -2      site.cpp  
 M  +6 -5      site.h  


--- branches/kstars/summer/kstars/kstars/comast/execute.cpp #1008507:1008508
@@ -50,6 +50,7 @@
     currentSession = NULL;
     nextSession = 0;
     nextObservation = 0;
+    nextSite = 0;
 
     //initialize the global logObject
     logObject = ks->data()->logObject();
@@ -149,18 +150,21 @@
 }
 
 bool Execute::saveSession() {
+    Comast::Site *site = logObject->findSiteByName( geo->fullName() ); 
+    if( ! site ) {
+        while( logObject->findSiteById( i18n( "site_" ) + QString::number( nextSite \
) ) ) +            nextSite++;
+        site = new Comast::Site( geo, i18n( "site_" ) + QString::number( nextSite++ \
) ); +        logObject->siteList()->append( site );
+    }
     if( currentSession ){
-            currentSession->setSession( currentSession->id(), geo->fullName(), \
ui.Begin->dateTime(), ui.Begin->dateTime(), ui.Weather->toPlainText(), \
ui.Equipment->toPlainText(), ui.Comment->toPlainText(), ui.Language->text() ); +      \
currentSession->setSession( currentSession->id(), site->id(), ui.Begin->dateTime(), \
ui.Begin->dateTime(), ui.Weather->toPlainText(), ui.Equipment->toPlainText(), \
ui.Comment->toPlainText(), ui.Language->text() );  } else {
         while( logObject->findSessionByName( i18n( "session_" ) + QString::number( \
nextSession ) ) )  nextSession++;
-        currentSession = new Comast::Session( i18n( "session_" ) + QString::number( \
nextSession++ ) , geo->fullName(), ui.Begin->dateTime(), ui.Begin->dateTime(), \
ui.Weather->toPlainText(), ui.Equipment->toPlainText(), ui.Comment->toPlainText(), \
ui.Language->text() ); +        currentSession = new Comast::Session( i18n( \
"session_" ) + QString::number( nextSession++ ) , site->id(), ui.Begin->dateTime(), \
ui.Begin->dateTime(), ui.Weather->toPlainText(), ui.Equipment->toPlainText(), \
ui.Comment->toPlainText(), ui.Language->text() );  logObject->sessionList()->append( \
currentSession );  } 
-    if( ! logObject->findSiteByName( geo->fullName() ) ) {
-        Comast::Site *newSite = new Comast::Site( geo );
-        logObject->siteList()->append( newSite );
-    }
     ui.stackedWidget->setCurrentIndex( 1 ); //Move to the next page
     return true;
 }
@@ -247,14 +251,14 @@
     QString observer = "";
     if( currentObserver )
         observer = currentObserver->id();
-    Comast::Observation *o = new Comast::Observation( i18n( "observation_" ) + \
QString::number( nextObservation++ ) , observer, geo->fullName(), \
currentSession->id(), currentTarget->name(), dt, ui.FaintestStar->value(), \
ui.Seeing->value(), ui.Scope->currentText(), ui.Eyepiece->currentText(), \
ui.Lens->currentText(), ui.Filter->currentText(), ui.Description->toPlainText(), \
ui.Language->text() ); +    Comast::Observation *o = new Comast::Observation( i18n( \
"observation_" ) + QString::number( nextObservation++ ) , observer, \
currentSession->site(), currentSession->id(), currentTarget->name(), dt, \
ui.FaintestStar->value(), ui.Seeing->value(), ui.Scope->currentText(), \
ui.Eyepiece->currentText(), ui.Lens->currentText(), ui.Filter->currentText(), \
ui.Description->toPlainText(), ui.Language->text() );  \
logObject->observationList()->append( o );  ui.Description->clear();
     return true;
 }
 void Execute::slotEndSession() {
     if( currentSession ) {
-        currentSession->setSession( currentSession->id(), geo->fullName(), \
ui.Begin->dateTime(), KStarsDateTime::currentDateTime(), ui.Weather->toPlainText(), \
ui.Equipment->toPlainText(), ui.Comment->toPlainText(), ui.Language->text() ); +      \
currentSession->setSession( currentSession->id(), currentSession->site(), \
ui.Begin->dateTime(), KStarsDateTime::currentDateTime(), ui.Weather->toPlainText(), \
                ui.Equipment->toPlainText(), ui.Comment->toPlainText(), \
                ui.Language->text() );
         KUrl fileURL = KFileDialog::getSaveUrl( QDir::homePath(), "*.xml" );
         if( fileURL.isValid() ) {
             QFile f( fileURL.path() );
--- branches/kstars/summer/kstars/kstars/comast/execute.h #1008507:1008508
@@ -134,7 +134,7 @@
         Comast::Filter *currentFilter;
         GeoLocation *geo;
         SkyObject *currentTarget;
-        int nextSession, nextObservation;
+        int nextSession, nextObservation, nextSite;
 };
 
 #endif
--- branches/kstars/summer/kstars/kstars/comast/log.cpp #1008507:1008508
@@ -200,7 +200,7 @@
 }
 void Comast::Log::writeSite( Comast::Site *s ) {
     writer->writeStartElement( "site" );
-    writer->writeAttribute( "id", s->name() );
+    writer->writeAttribute( "id", s->id() );
     writer->writeStartElement( "name" );
     writer->writeCDATA( s->name() );
     writer->writeEndElement();
@@ -466,7 +466,7 @@
 
         if( reader->isStartElement() ) {
             if( reader->name() == "site" )
-                readSite();
+                readSite( reader->attributes().value( "id" ).toString() );
             else
                 readUnknownElement();
         }
@@ -614,7 +614,7 @@
     m_observerList.append( o );
 }
 
-void Comast::Log::readSite() {
+void Comast::Log::readSite( QString id ) {
     QString name, latUnit, lonUnit, lat, lon;
     while( ! reader->atEnd() ) {
         reader->readNext();
@@ -635,7 +635,7 @@
                 readUnknownElement();
         }
     }
-    Comast::Site *o= new Comast::Site( name, lat.toDouble(), latUnit, \
lon.toDouble(), lonUnit ); +    Comast::Site *o= new Comast::Site( id, name, \
lat.toDouble(), latUnit, lon.toDouble(), lonUnit );  m_siteList.append( o );
 }
 
@@ -897,6 +897,13 @@
     return NULL;
 }
 
+Comast::Site* Comast::Log::findSiteById( QString id ) {
+    foreach( Comast::Site *s, *siteList() )
+        if( s->id()  == id )
+            return s;
+    return NULL;
+}
+
 Comast::Site* Comast::Log::findSiteByName( QString name ) {
     foreach( Comast::Site *s, *siteList() )
         if( s->name()  == name )
--- branches/kstars/summer/kstars/kstars/comast/log.h #1008507:1008508
@@ -87,7 +87,7 @@
         void readObservation( QString id );
         void readTarget();
         void readObserver( QString id );
-        void readSite();
+        void readSite( QString id );
         void readSession( QString id, QString lang );
         void readScope( QString id );
         void readEyepiece( QString id );
@@ -98,7 +98,8 @@
         QString readResult();
         Comast::Observer* findObserverByName( QString fullName );
         Comast::Observer* findObserverById( QString id );
-        Comast::Site* findSiteByName( QString id );
+        Comast::Site* findSiteByName( QString name );
+        Comast::Site* findSiteById( QString id );
         Comast::Session* findSessionByName( QString id );
         Comast::Scope* findScopeByName( QString id );
         Comast::Eyepiece* findEyepieceByName( QString id );
--- branches/kstars/summer/kstars/kstars/comast/site.cpp #1008507:1008508
@@ -18,14 +18,16 @@
 
 #include "comast/site.h"
 
-void Comast::Site::setSite( QString _name, double _lat, QString _latUnit, double \
_lon, QString _lonUnit ){ +void Comast::Site::setSite(QString _id, QString _name, \
double _lat, QString _latUnit, double _lon, QString _lonUnit ){ +    m_Id = _id;
     m_Name = _name;
     m_Lat = _lat;
     m_Lon = _lon;
     m_LatUnit = _latUnit;
     m_LonUnit = _lonUnit;
 }
-void Comast::Site::setSite( GeoLocation *geo ) {
+void Comast::Site::setSite( GeoLocation *geo, QString id ) {
+    m_Id = id;
     m_Name = geo->name();
     m_Lat = geo->lat()->radians();
     m_Lon = geo->lng()->radians();
--- branches/kstars/summer/kstars/kstars/comast/site.h #1008507:1008508
@@ -26,17 +26,18 @@
 
 class Comast::Site {
     public:
-       Site( QString name, double lat, QString latUnit, double lon, QString lonUnit \
                ) { setSite( name, lat, latUnit, lon, lonUnit ); }
-       Site( GeoLocation *geo ) { setSite( geo ); }
+       Site( QString id,  QString name, double lat, QString latUnit, double lon, \
QString lonUnit ) { setSite( id, name, lat, latUnit, lon, lonUnit ); } +       Site( \
GeoLocation *geo, QString id ) { setSite( geo, id ); } +       QString id() { return \
m_Id; }  QString name() { return m_Name; }
        double latitude() { return m_Lat; }
        QString latUnit() { return m_LatUnit; }
        double longitude() { return m_Lon; }
        QString lonUnit() { return m_LonUnit; }
-       void setSite( QString _name, double _lat, QString _latUnit, double _lon, \
                QString _lonUnit);
-       void setSite( GeoLocation *geo );
+       void setSite( QString _id, QString _name, double _lat, QString _latUnit, \
double _lon, QString _lonUnit); +       void setSite( GeoLocation *geo, QString id );
     private:
-        QString m_Name, m_LatUnit, m_LonUnit;
+        QString m_Name, m_LatUnit, m_LonUnit, m_Id;
         double m_Lat, m_Lon;
 };
 #endif
_______________________________________________
Kstars-devel mailing list
Kstars-devel@kde.org
https://mail.kde.org/mailman/listinfo/kstars-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic