From 541bbcbb89a9e6a054fb545a82739c0bcf7804fe Mon Sep 17 00:00:00 2001 From: tille Date: Wed, 26 Jun 2002 12:45:03 +0000 Subject: settings... --- (limited to 'noncore/settings') diff --git a/noncore/settings/netsystemtime/ntp.cpp b/noncore/settings/netsystemtime/ntp.cpp index b2f192a..52fc6be 100644 --- a/noncore/settings/netsystemtime/ntp.cpp +++ b/noncore/settings/netsystemtime/ntp.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include @@ -26,8 +27,8 @@ Ntp::Ntp( QWidget* parent, const char* name, WFlags fl ) cfg.setGroup("settings"); // _maxOffset = cfg.readNumEntry("maxOffset",5); // _minLookupDiff = cfg.readNumEntry("minLookupDiff",10); - SpinBoxMinDelay->setValue( cfg.readNumEntry("minLookupDiff",10) ); - SpinBoxMinDelay->setMinValue( 7 ); + SpinBoxMinLookupDelay->setValue( cfg.readNumEntry("minLookupDiff",60) ); + SpinBoxNtpDelay->setValue( cfg.readNumEntry("ntpRefreshFreq",60) ); LineEditNtpSrv->setText( cfg.readEntry("ntpServer", tr("time.fu-berlin.de")) ); ntpProcess = new OProcess( ); @@ -52,12 +53,31 @@ Ntp::~Ntp() Config cfg("ntp",Config::User); cfg.setGroup("settings"); cfg.writeEntry("ntpServer", LineEditNtpSrv->text()); - cfg.writeEntry( "minLookupDiff", SpinBoxMinDelay->value() ); + cfg.writeEntry( "minLookupDiff", SpinBoxMinLookupDelay->value() ); + cfg.writeEntry( "ntpRefreshFreq", SpinBoxNtpDelay->value() ); } void Ntp::slotRunNtp() { + Config cfg("ntp",Config::User); + cfg.setGroup("lookups"); + int lookupDiff = TimeConversion::toUTC(QDateTime::currentDateTime()) - cfg.readNumEntry("time",0); + + if ( lookupDiff < SpinBoxNtpDelay->value()*60 ) + { + switch ( + QMessageBox::warning(this, tr("Run ntp?"), + tr("You asked for a delay of ")+SpinBoxNtpDelay->text()+tr(" minutes, but only ")+ + QString::number(lookupDiff%60)+tr(" minutes elapsed since last loopup.")+ + "
"+tr("Rerun ntp?"), + QMessageBox::Ok,QMessageBox::Cancel) + ) { + case QMessageBox::Ok: break; + case QMessageBox::Cancel: return; + default: return; + } + } TextLabelStartTime->setText(QDateTime::currentDateTime().toString()); ntpProcess->clearArguments(); *ntpProcess << "ntpdate" << LineEditNtpSrv->text(); @@ -95,7 +115,8 @@ void Ntp::ntpFinished(OProcess*) if (timeShift == 0.0) return; int secsSinceLast = time - lastLookup; TextLabelNewTime->setText(QDateTime::currentDateTime().toString()); - if ( lastLookup > 0 && secsSinceLast > 60*24* SpinBoxMinDelay->value()) + TextLabelTimeShift->setText(QString::number(timeShift)+tr(" seconds")); + if ( lastLookup > 0 && secsSinceLast > 60* SpinBoxMinLookupDelay->value()) { lookupCount++; cfg.writeEntry("count",lookupCount); @@ -108,28 +129,6 @@ 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); -// 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()); -//} float Ntp::getTimeShift() { @@ -143,7 +142,6 @@ float Ntp::getTimeShift() QString diff = _ntpOutput.mid(posOffset, posEndOffset-posOffset-1); qDebug("%s", _ntpOutput.latin1()); qDebug("diff = >%s<",diff.latin1()); - TextLabelTimeShift->setText(diff); return diff.toFloat(); } @@ -164,6 +162,8 @@ void Ntp::readLookups() TableLookups->setColumnWidth( 0, cw+30 ); TableLookups->setColumnWidth( 1, cw ); TableLookups->setColumnWidth( 2, cw ); + TableLookups->sortColumn(0, false, true ); + // TableLookups->setSorting( true ); for (int i=0; i < lookupCount; i++) { cfg.setGroup("lookup_"+QString::number(i)); @@ -178,7 +178,7 @@ void Ntp::readLookups() TableLookups->setText( i,1,QString::number(last)); } _shiftPerSec /= lookupCount+1; - TextLabelShift->setText(QString::number(_shiftPerSec)); + TextLabelShift->setText(QString::number(_shiftPerSec)+tr(" seconds")); } void Ntp::preditctTime() @@ -192,7 +192,7 @@ void Ntp::preditctTime() int corr = int((now - lastTime) * _shiftPerSec); predictedTime = QDateTime::currentDateTime().addSecs(corr); TextLabelPredTime->setText(predictedTime.toString()); - TextLabelMainPredTime->setText(predictedTime.toString()); + TextLabelMainPredTime->setText(tr("Predicted time:")+"
"+predictedTime.toString()+""); } void Ntp::setPredictTime() @@ -210,7 +210,7 @@ void Ntp::slotCheckNtp(int i) connect( ButtonSetTime, SIGNAL(clicked()), SLOT(slotRunNtp()) ); }else{ preditctTime(); - ButtonSetTime->setText( tr("Predict time") ); + ButtonSetTime->setText( tr("Set predicted time") ); connect( ButtonSetTime, SIGNAL(clicked()), SLOT(setPredictTime()) ); }; } diff --git a/noncore/settings/netsystemtime/ntpbase.ui b/noncore/settings/netsystemtime/ntpbase.ui index e444065..8d32849 100644 --- a/noncore/settings/netsystemtime/ntpbase.ui +++ b/noncore/settings/netsystemtime/ntpbase.ui @@ -11,8 +11,8 @@ 0 0 - 276 - 337 + 330 + 419 @@ -32,7 +32,7 @@ spacing - 1 + 2 QTabWidget @@ -59,11 +59,11 @@ margin - 3 + 2 spacing - 3 + 2 QFrame @@ -95,11 +95,11 @@ margin - 3 + 1 spacing - 3 + 2 QPushButton @@ -129,14 +129,17 @@ layoutMargin + + layoutSpacing + margin - 11 + 2 spacing - 6 + 2 QLayoutWidget @@ -253,9 +256,19 @@ MultiLineEditntpOutPut + font + + 7 + + + wordWrap WidgetWidth + + text + + @@ -382,11 +395,11 @@ margin - 3 + 2 spacing - 3 + 2 QFrame @@ -402,14 +415,20 @@ frameShadow Raised + + layoutMargin + + + layoutSpacing + margin - 11 + 3 spacing - 6 + 11 QLayoutWidget @@ -426,107 +445,217 @@ spacing 6 - + + QLabel + + name + TextLabel7_2 + + + text + Use + + + + QLabel + + name + TextLabel2_2 + + + text + as + + + + QLabel + + name + TextLabel1_3 + + + text + NTP server to get the time from the network. + + + alignment + WordBreak|AlignVCenter|AlignLeft + + wordwrap + + + + QLineEdit + name - Spacer2 + LineEditNtpSrv + + + + + + name + Spacer2 + + + orientation + Vertical + + + sizeType + Expanding + + + sizeHint + + 20 + 20 + + + + + QLayoutWidget + + name + Layout7 + + + + margin + 0 + + + spacing + 6 + + + QLabel - orientation - Vertical + name + TextLabel1_2 - sizeType - Expanding + text + Insure a delay of + + + + QLabel + + name + TextLabel2 + + + text + minutes until + + + + QLabel + + name + TextLabel3_3 + + + text + a new NTP lookup will be used to predict the time. + + + alignment + WordBreak|AlignVCenter|AlignLeft - sizeHint - - 20 - 20 - + wordwrap - - - QLayoutWidget + + + QSpinBox name - Layout6 - - - - margin - 0 - - - spacing - 6 - - - QLabel - - name - TextLabel7_2 - - - text - NTP Server: - - - - QLineEdit - - name - LineEditNtpSrv - - - + SpinBoxMinLookupDelay + + + maxValue + 9999999 + + + minValue + 42 + + + + + QLayoutWidget + + name + Layout7_2 + + + + margin + 0 + + + spacing + 6 + - QLayoutWidget + QLabel + + name + TextLabel1_2_2 + + + text + Wait for + + + + QLabel + + name + TextLabel2_3 + + + text + minutes until + + + + QLabel + + name + TextLabel3_3_2 + + + text + NTP syncronises the clock with the network + + + alignment + WordBreak|AlignVCenter|AlignLeft + + + wordwrap + + + + QSpinBox name - Layout5 - - - - margin - 0 - - - spacing - 6 - - - QLabel - - name - TextLabel1_2 - - - text - Min. delay: - - - - QSpinBox - - name - SpinBoxMinDelay - - - - QLabel - - name - TextLabel2 - - - text - minutes - - - + SpinBoxNtpDelay + + + maxValue + 9999999 + + + minValue + 0 + diff --git a/noncore/settings/netsystemtime/settime.cpp b/noncore/settings/netsystemtime/settime.cpp index b456012..2398c08 100644 --- a/noncore/settings/netsystemtime/settime.cpp +++ b/noncore/settings/netsystemtime/settime.cpp @@ -261,16 +261,16 @@ void SetDateTime::setTime(QDateTime dt) if ( myTv.tv_sec != -1 ) ::settimeofday( &myTv, 0 ); Global::writeHWClock(); + // since time has changed quickly load in the datebookdb + // to allow the alarm server to get a better grip on itself + // (example re-trigger alarms for when we travel back in time) + DateBookDB db; } void SetDateTime::updateSystem(int i) { qDebug("SetDateTime::updateSystem(int %i)",i); writeSettings(); - // since time has changed quickly load in the datebookdb - // to allow the alarm server to get a better grip on itself - // (example re-trigger alarms for when we travel back in time) - // DateBookDB db; // set the timezone for everyone else... QCopEnvelope setTimeZone( "QPE/System", "timeChange(QString)" ); @@ -291,6 +291,10 @@ void SetDateTime::updateSystem(int i) // Restore screensaver QCopEnvelope enableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" ); enableScreenSaver << -1 << -1 << -1; + // since time has changed quickly load in the datebookdb + // to allow the alarm server to get a better grip on itself + // (example re-trigger alarms for when we travel back in time) + DateBookDB db; } -- cgit v0.9.0.2