-rw-r--r-- | noncore/settings/netsystemtime/ntp.cpp | 50 | ||||
-rw-r--r-- | noncore/settings/netsystemtime/ntp.h | 4 | ||||
-rw-r--r-- | noncore/settings/netsystemtime/settime.cpp | 24 | ||||
-rw-r--r-- | noncore/settings/netsystemtime/settime.h | 1 |
4 files changed, 45 insertions, 34 deletions
diff --git a/noncore/settings/netsystemtime/ntp.cpp b/noncore/settings/netsystemtime/ntp.cpp index ddb1372..87b20ec 100644 --- a/noncore/settings/netsystemtime/ntp.cpp +++ b/noncore/settings/netsystemtime/ntp.cpp @@ -34,4 +34,4 @@ Ntp::Ntp( QWidget* parent, const char* name, WFlags fl ) connect(PushButtonPredict, SIGNAL(clicked()), this, SLOT(preditctTime())); - _nextCorrection = new QTimer( this ); - connect( _nextCorrection, SIGNAL(timeout()), SLOT(correctClock()) ); +// _nextCorrection = new QTimer( this ); +// connect( _nextCorrection, SIGNAL(timeout()), SLOT(correctClock()) ); slotRunNtp(); @@ -85,2 +85,4 @@ void Ntp::ntpFinished(OProcess*) cfg.writeEntry("time", time); + cfg.setGroup("correction"); + cfg.writeEntry("time", time); @@ -103,20 +105,24 @@ void Ntp::ntpFinished(OProcess*) -void Ntp::correctClock() -{ - qDebug("current time: %s",QDateTime::currentDateTime().toString().latin1()); - Config cfg("ntp",Config::User); - cfg.setGroup("correction"); - int lastTime = cfg.readNumEntry("time",0); - int now = TimeConversion::toUTC( QDateTime::currentDateTime() ); - int corr = int((now - lastTime) * _shiftPerSec); - struct timeval myTv; - myTv.tv_sec = TimeConversion::toUTC( QDateTime::currentDateTime().addSecs(corr) ); - myTv.tv_usec = 0; - - if ( myTv.tv_sec != -1 ) - ::settimeofday( &myTv, 0 ); - Global::writeHWClock(); - cfg.writeEntry("time",now); - qDebug("current time: %s",QDateTime::currentDateTime().toString().latin1()); -} +//void Ntp::correctClock() +//{ +// qDebug("current time: %s",QDateTime::currentDateTime().toString().latin1()); +// Config cfg("ntp",Config::User); +// cfg.setGroup("correction"); +// int lastTime = cfg.readNumEntry("time",0); +// if ( lastTime == 0 ) +// { +// return; +// } +// int now = TimeConversion::toUTC( QDateTime::currentDateTime() ); +// int corr = int((now - lastTime) * _shiftPerSec); +// struct timeval myTv; +// myTv.tv_sec = TimeConversion::toUTC( QDateTime::currentDateTime().addSecs(corr) ); +// myTv.tv_usec = 0; +// +// if ( myTv.tv_sec != -1 ) +// ::settimeofday( &myTv, 0 ); +// Global::writeHWClock(); +// cfg.writeEntry("time",now); +// qDebug("current time: %s",QDateTime::currentDateTime().toString().latin1()); +//} @@ -181,3 +187,5 @@ void Ntp::preditctTime() int corr = int((now - lastTime) * _shiftPerSec); - TextLabelPredTime->setText(QDateTime::currentDateTime().addSecs(corr).toString()); + QDateTime dt = QDateTime::currentDateTime().addSecs(corr); + setTime(dt); + TextLabelPredTime->setText(dt.toString()); } diff --git a/noncore/settings/netsystemtime/ntp.h b/noncore/settings/netsystemtime/ntp.h index fc233bf..d2e238d 100644 --- a/noncore/settings/netsystemtime/ntp.h +++ b/noncore/settings/netsystemtime/ntp.h @@ -27,3 +27,3 @@ private: float _shiftPerSec; - QTimer *_nextCorrection; +// QTimer *_nextCorrection; int _minLookupDiff; @@ -36,3 +36,3 @@ private slots: void ntpFinished(OProcess*); - void correctClock(); +// void correctClock(); void preditctTime(); diff --git a/noncore/settings/netsystemtime/settime.cpp b/noncore/settings/netsystemtime/settime.cpp index dac5bd4..01268c9 100644 --- a/noncore/settings/netsystemtime/settime.cpp +++ b/noncore/settings/netsystemtime/settime.cpp @@ -210,6 +210,2 @@ void SetDateTime::commitTime() { - Config cfg("ntp",Config::User); - cfg.setGroup("lookups"); - int time = TimeConversion::toUTC( QDateTime::currentDateTime() ); - cfg.writeEntry("time", time); tz->setFocus(); @@ -229,6 +225,14 @@ void SetDateTime::commitTime() - if ( dt.isValid() ) { - struct timeval myTv; - myTv.tv_sec = TimeConversion::toUTC( dt ); - myTv.tv_usec = 0; + if ( dt.isValid() ) setTime(dt); +} + +void SetDateTime::setTime(QDateTime dt) +{ + Config cfg("ntp",Config::User); + cfg.setGroup("correction"); + int t = TimeConversion::toUTC(dt); + struct timeval myTv; + myTv.tv_sec = t; + cfg.writeEntry("time", t ); + myTv.tv_usec = 0; @@ -241,5 +245,3 @@ void SetDateTime::commitTime() DateBookDB db; - } else { - qWarning( "Invalid date/time" ); - } + // set the timezone for everyone else... diff --git a/noncore/settings/netsystemtime/settime.h b/noncore/settings/netsystemtime/settime.h index 053d17a..729bf4b 100644 --- a/noncore/settings/netsystemtime/settime.h +++ b/noncore/settings/netsystemtime/settime.h @@ -78,2 +78,3 @@ protected: void commitTime(); + void setTime(QDateTime dt); virtual void accept(); |