summaryrefslogtreecommitdiff
path: root/noncore/settings/netsystemtime/settime.cpp
Side-by-side diff
Diffstat (limited to 'noncore/settings/netsystemtime/settime.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/netsystemtime/settime.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/noncore/settings/netsystemtime/settime.cpp b/noncore/settings/netsystemtime/settime.cpp
index 2cef6e8..b456012 100644
--- a/noncore/settings/netsystemtime/settime.cpp
+++ b/noncore/settings/netsystemtime/settime.cpp
@@ -191,13 +191,27 @@ SetDateTime::SetDateTime(QWidget *parent, const char *name, WFlags f )
QObject::connect( tz, SIGNAL( signalNewTz( const QString& ) ),
timeButton, SLOT( slotTzChange( const QString& ) ) );
QObject::connect( tz, SIGNAL( signalNewTz( const QString& ) ),
SLOT( tzChange( const QString& ) ) );
+
+ QObject::connect( weekStartCombo, SIGNAL( activated ( int )),
+ SLOT(updateSystem(int ) ));
+ QObject::connect( ampmCombo, SIGNAL( activated ( int )),
+ SLOT(updateSystem(int ) ));
+ QObject::connect( dateFormatCombo, SIGNAL( activated ( int )),
+ SLOT(updateSystem(int ) ));
+ QObject::connect( clockAppletCombo, SIGNAL( activated ( int )),
+ SLOT(updateSystem(int ) ));
}
SetDateTime::~SetDateTime()
{
+ writeSettings();
+
+}
+void SetDateTime::writeSettings()
+{
Config config("qpe");
config.setGroup( "Time" );
config.writeEntry( "AMPM", ampmCombo->currentItem() );
config.writeEntry( "MONDAY", weekStartCombo->currentItem() );
@@ -246,12 +260,18 @@ void SetDateTime::setTime(QDateTime dt)
if ( myTv.tv_sec != -1 )
::settimeofday( &myTv, 0 );
Global::writeHWClock();
+}
+
+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;
+ // DateBookDB db;
// set the timezone for everyone else...
QCopEnvelope setTimeZone( "QPE/System", "timeChange(QString)" );
setTimeZone << tz->currentZone();
@@ -275,8 +295,9 @@ void SetDateTime::setTime(QDateTime dt)
}
void SetDateTime::tzChange( const QString &tz )
{
+ qDebug("SetDateTime::tzChange");
// set the TZ get the time and leave gracefully...
QString strSave;
strSave = getenv( "TZ" );
setenv( "TZ", tz, 1 );
@@ -286,8 +307,9 @@ void SetDateTime::tzChange( const QString &tz )
if ( !strSave.isNull() ) {
setenv( "TZ", strSave, 1 );
}
dateButton->setDate( d );
+ updateSystem();
}
void SetDateTime::formatChanged(int i)
{
@@ -429,8 +451,9 @@ void SetTime::checkedPM( int c )
}
void SetTime::slotTzChange( const QString &tz )
{
+ qDebug("SetTime::slotTzChange");
// set the TZ get the time and leave gracefully...
QString strSave;
strSave = getenv( "TZ" );
setenv( "TZ", tz, 1 );