summaryrefslogtreecommitdiff
authordrw <drw>2005-02-23 16:14:09 (UTC)
committer drw <drw>2005-02-23 16:14:09 (UTC)
commite5b1e010c321ba1edac704f9d668df75b22fd074 (patch) (unidiff)
treec76221c7d8292f66ef05040721edf816a04fbeba
parent30857db6ca3f355aa3d50b59f03a13c82f265af2 (diff)
downloadopie-e5b1e010c321ba1edac704f9d668df75b22fd074.zip
opie-e5b1e010c321ba1edac704f9d668df75b22fd074.tar.gz
opie-e5b1e010c321ba1edac704f9d668df75b22fd074.tar.bz2
Fix UI to prevent error dialog from displaying when it shouldn't
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/netsystemtime/mainwindow.cpp61
-rw-r--r--noncore/settings/netsystemtime/ntptabwidget.cpp61
-rw-r--r--noncore/settings/netsystemtime/ntptabwidget.h46
-rw-r--r--noncore/settings/netsystemtime/timetabwidget.cpp57
-rw-r--r--noncore/settings/netsystemtime/timetabwidget.h47
5 files changed, 152 insertions, 120 deletions
diff --git a/noncore/settings/netsystemtime/mainwindow.cpp b/noncore/settings/netsystemtime/mainwindow.cpp
index 385d355..486257f 100644
--- a/noncore/settings/netsystemtime/mainwindow.cpp
+++ b/noncore/settings/netsystemtime/mainwindow.cpp
@@ -1,31 +1,31 @@
1/* 1/*
2                This file is part of the OPIE Project 2 This file is part of the OPIE Project
3 =. 3 =.
4             .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?> 4 .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?>
5           .>+-= 5 .>+-=
6 _;:,     .>    :=|. This file is free software; you can 6_;:, .> :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under 7.> <`_, > . <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public 8:`=1 )Y*s>-.-- : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software 9.="- .-=="i, .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License, 10- . .-<_> .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version. 11 ._= =} : or (at your option) any later version.
12    .%`+i>       _;_. 12 .%`+i> _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that 13 .i_,=:_. -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 14 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of 15 : .. .:, . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 16 =_ + =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 17 _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details. 18..}^=.= = ; Public License for more details.
19++=   -.     .`     .: 19++= -. .` .:
20 :     =  ...= . :.=- You should have received a copy of the GNU 20: = ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file; 21-. .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the 22 -_. . . )=. = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc., 23 -- :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330, 24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#include "mainwindow.h" 29#include "mainwindow.h"
30#include "timetabwidget.h" 30#include "timetabwidget.h"
31#include "formattabwidget.h" 31#include "formattabwidget.h"
@@ -46,17 +46,17 @@
46#include <qmessagebox.h> 46#include <qmessagebox.h>
47#include <qsocket.h> 47#include <qsocket.h>
48#include <qstring.h> 48#include <qstring.h>
49#include <qtimer.h> 49#include <qtimer.h>
50 50
51using namespace Opie::Ui; 51using namespace Opie::Ui;
52using namespace Opie::Core; 52using namespace Opie::Core;
53MainWindow::MainWindow( QWidget *parent , const char *name, bool modal, WFlags f ) 53MainWindow::MainWindow( QWidget *parent , const char *name, bool modal, WFlags f )
54 : QDialog( 0x0, 0x0, TRUE, 0 ) 54 : QDialog( parent, name, modal, f )
55{ 55{
56 setCaption( tr( "SystemTime" ) ); 56 setCaption( tr( "SystemTime" ) );
57 57
58 QVBoxLayout *layout = new QVBoxLayout( this ); 58 QVBoxLayout *layout = new QVBoxLayout( this );
59 layout->setMargin( 2 ); 59 layout->setMargin( 2 );
60 layout->setSpacing( 4 ); 60 layout->setSpacing( 4 );
61 61
62 // Create main tabbed control 62 // Create main tabbed control
@@ -182,16 +182,21 @@ void MainWindow::runNTP()
182 if ( ntpTabEnabled ) 182 if ( ntpTabEnabled )
183 { 183 {
184 ntpTab->setStartTime( QDateTime::currentDateTime().toString() ); 184 ntpTab->setStartTime( QDateTime::currentDateTime().toString() );
185 QString output = tr( "Running:\nntpdate " ); 185 QString output = tr( "Running:\nntpdate " );
186 output.append( srv ); 186 output.append( srv );
187 ntpTab->addNtpOutput( output ); 187 ntpTab->addNtpOutput( output );
188 } 188 }
189 189
190 // Disable set time buttons & change app caption to indicate time update is happening
191 ntpTab->setNTPBtnEnabled( false );
192 timeTab->setNTPBtnEnabled( false );
193 setCaption( tr( "Retrieving time from network..." ) );
194
190 if ( !ntpProcess ) 195 if ( !ntpProcess )
191 { 196 {
192 ntpProcess = new OProcess(); 197 ntpProcess = new OProcess();
193 connect( ntpProcess, SIGNAL(receivedStdout(Opie::Core::OProcess*,char*,int)), 198 connect( ntpProcess, SIGNAL(receivedStdout(Opie::Core::OProcess*,char*,int)),
194 this, SLOT(slotNtpOutput(Opie::Core::OProcess*,char*,int)) ); 199 this, SLOT(slotNtpOutput(Opie::Core::OProcess*,char*,int)) );
195 connect( ntpProcess, SIGNAL(processExited(Opie::Core::OProcess*)), 200 connect( ntpProcess, SIGNAL(processExited(Opie::Core::OProcess*)),
196 this, SLOT(slotNtpFinished(Opie::Core::OProcess*)) ); 201 this, SLOT(slotNtpFinished(Opie::Core::OProcess*)) );
197 } 202 }
@@ -201,16 +206,21 @@ void MainWindow::runNTP()
201 206
202 *ntpProcess << "ntpdate" << srv; 207 *ntpProcess << "ntpdate" << srv;
203 bool ret = ntpProcess->start( OProcess::NotifyOnExit, OProcess::AllOutput ); 208 bool ret = ntpProcess->start( OProcess::NotifyOnExit, OProcess::AllOutput );
204 if ( !ret ) 209 if ( !ret )
205 { 210 {
206 QMessageBox::critical( this, tr( "Error" ), tr( "Error while getting time from network." ) ); 211 QMessageBox::critical( this, tr( "Error" ), tr( "Error while getting time from network." ) );
207 if ( ntpTabEnabled ) 212 if ( ntpTabEnabled )
208 ntpTab->addNtpOutput( tr( "Error while executing ntpdate" ) ); 213 ntpTab->addNtpOutput( tr( "Error while executing ntpdate" ) );
214
215 // Re-enable set time buttons & change app caption to indicate time update is happening
216 ntpTab->setNTPBtnEnabled( true );
217 timeTab->setNTPBtnEnabled( true );
218 setCaption( tr( "SystemTime" ) );
209 } 219 }
210} 220}
211 221
212bool MainWindow::ntpDelayElapsed() 222bool MainWindow::ntpDelayElapsed()
213{ 223{
214 // Determine if time elapsed is greater than time delay 224 // Determine if time elapsed is greater than time delay
215 Config config( "ntp" ); 225 Config config( "ntp" );
216 config.setGroup( "lookups" ); 226 config.setGroup( "lookups" );
@@ -293,16 +303,21 @@ void MainWindow::slotNtpOutput( OProcess *, char *buffer, int buflen )
293 ntpTab->addNtpOutput( output ); 303 ntpTab->addNtpOutput( output );
294} 304}
295 305
296void MainWindow::slotNtpFinished( OProcess *p ) 306void MainWindow::slotNtpFinished( OProcess *p )
297{ 307{
298 QString output; 308 QString output;
299 QDateTime dt = QDateTime::currentDateTime(); 309 QDateTime dt = QDateTime::currentDateTime();
300 310
311 // Re-enable set time buttons & change app caption to indicate time update is happening
312 ntpTab->setNTPBtnEnabled( true );
313 timeTab->setNTPBtnEnabled( true );
314 setCaption( tr( "SystemTime" ) );
315
301 // Verify run was successful 316 // Verify run was successful
302 if ( p->exitStatus() != 0 || !p->normalExit() ) 317 if ( p->exitStatus() != 0 || !p->normalExit() )
303 { 318 {
304 if ( isVisible() && ntpInteractive ) 319 if ( isVisible() && ntpInteractive )
305 { 320 {
306 output = tr( "Error while getting time from\n server: " ); 321 output = tr( "Error while getting time from\n server: " );
307 output.append( settingsTab->ntpServer() ); 322 output.append( settingsTab->ntpServer() );
308 QMessageBox::critical(this, tr( "Error" ), output ); 323 QMessageBox::critical(this, tr( "Error" ), output );
@@ -346,17 +361,17 @@ void MainWindow::slotNtpFinished( OProcess *p )
346 ntpTab->setNewTime( dt.toString() ); 361 ntpTab->setNewTime( dt.toString() );
347 } 362 }
348 363
349 if ( lastNtp && lastLookup > 0 && secsSinceLast > 60 * ntpDelay ) 364 if ( lastNtp && lastLookup > 0 && secsSinceLast > 60 * ntpDelay )
350 { 365 {
351 QString grpname = QString( "lookup_" ).append( QString::number( lookupCount ) ); 366 QString grpname = QString( "lookup_" ).append( QString::number( lookupCount ) );
352 config.setGroup( grpname ); 367 config.setGroup( grpname );
353 lookupCount++; 368 lookupCount++;
354 predictTab->setShiftPerSec( timeShift / secsSinceLast ); 369 predictTab->setShiftPerSec( (int)(timeShift / secsSinceLast) );
355 config.writeEntry( "secsSinceLast", secsSinceLast ); 370 config.writeEntry( "secsSinceLast", secsSinceLast );
356 config.writeEntry( "timeShift", QString::number( timeShift ) ); 371 config.writeEntry( "timeShift", QString::number( timeShift ) );
357 config.setGroup( "lookups" ); 372 config.setGroup( "lookups" );
358 config.writeEntry( "count", lookupCount ); 373 config.writeEntry( "count", lookupCount );
359 config.writeEntry( "lastNtp", TRUE ); 374 config.writeEntry( "lastNtp", TRUE );
360 } 375 }
361} 376}
362 377
diff --git a/noncore/settings/netsystemtime/ntptabwidget.cpp b/noncore/settings/netsystemtime/ntptabwidget.cpp
index d71c230..616bc22 100644
--- a/noncore/settings/netsystemtime/ntptabwidget.cpp
+++ b/noncore/settings/netsystemtime/ntptabwidget.cpp
@@ -1,31 +1,31 @@
1/* 1/*
2                This file is part of the OPIE Project 2 This file is part of the OPIE Project
3 =. 3 =.
4             .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?> 4 .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?>
5           .>+-= 5 .>+-=
6 _;:,     .>    :=|. This file is free software; you can 6_;:, .> :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under 7.> <`_, > . <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public 8:`=1 )Y*s>-.-- : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software 9.="- .-=="i, .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License, 10- . .-<_> .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version. 11 ._= =} : or (at your option) any later version.
12    .%`+i>       _;_. 12 .%`+i> _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that 13 .i_,=:_. -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 14 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of 15 : .. .:, . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 16 =_ + =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 17 _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details. 18..}^=.= = ; Public License for more details.
19++=   -.     .`     .: 19++= -. .` .:
20 :     =  ...= . :.=- You should have received a copy of the GNU 20: = ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file; 21-. .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the 22 -_. . . )=. = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc., 23 -- :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330, 24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#include "ntptabwidget.h" 29#include "ntptabwidget.h"
30 30
31#include <qpe/resource.h> 31#include <qpe/resource.h>
@@ -41,17 +41,17 @@ NTPTabWidget::NTPTabWidget( QWidget *parent )
41{ 41{
42 QVBoxLayout *tmpvb = new QVBoxLayout( this ); 42 QVBoxLayout *tmpvb = new QVBoxLayout( this );
43 QScrollView *sv = new QScrollView( this ); 43 QScrollView *sv = new QScrollView( this );
44 tmpvb->addWidget( sv, 0, 0 ); 44 tmpvb->addWidget( sv, 0, 0 );
45 sv->setResizePolicy( QScrollView::AutoOneFit ); 45 sv->setResizePolicy( QScrollView::AutoOneFit );
46 sv->setFrameStyle( QFrame::NoFrame ); 46 sv->setFrameStyle( QFrame::NoFrame );
47 QWidget *container = new QWidget( sv->viewport() ); 47 QWidget *container = new QWidget( sv->viewport() );
48 sv->addChild( container ); 48 sv->addChild( container );
49 49
50 QGridLayout *layout = new QGridLayout( container ); 50 QGridLayout *layout = new QGridLayout( container );
51 layout->setMargin( 2 ); 51 layout->setMargin( 2 );
52 layout->setSpacing( 4 ); 52 layout->setSpacing( 4 );
53 53
54 // Start time 54 // Start time
55 layout->addWidget( new QLabel( tr( "Start time" ), container ), 0, 0 ); 55 layout->addWidget( new QLabel( tr( "Start time" ), container ), 0, 0 );
56 lblStartTime = new QLabel( tr( "n/a" ), container ); 56 lblStartTime = new QLabel( tr( "n/a" ), container );
57 layout->addWidget( lblStartTime, 0, 1 ); 57 layout->addWidget( lblStartTime, 0, 1 );
@@ -65,25 +65,25 @@ NTPTabWidget::NTPTabWidget( QWidget *parent )
65 layout->addWidget( new QLabel( tr( "New time" ), container ), 2, 0 ); 65 layout->addWidget( new QLabel( tr( "New time" ), container ), 2, 0 );
66 lblNewTime = new QLabel( tr( "n/a" ), container ); 66 lblNewTime = new QLabel( tr( "n/a" ), container );
67 layout->addWidget( lblNewTime, 2, 1 ); 67 layout->addWidget( lblNewTime, 2, 1 );
68 68
69 // NTP output display 69 // NTP output display
70 mleNtpOutput = new QMultiLineEdit( container ); 70 mleNtpOutput = new QMultiLineEdit( container );
71 QFont font( mleNtpOutput->font() ); 71 QFont font( mleNtpOutput->font() );
72 font.setPointSize( 7 ); 72 font.setPointSize( 7 );
73 mleNtpOutput->setFont( font ); 73 mleNtpOutput->setFont( font );
74 mleNtpOutput->setWordWrap( QMultiLineEdit::WidgetWidth ); 74 mleNtpOutput->setWordWrap( QMultiLineEdit::WidgetWidth );
75 layout->addMultiCellWidget( mleNtpOutput, 3, 3, 0, 1 ); 75 layout->addMultiCellWidget( mleNtpOutput, 3, 3, 0, 1 );
76 76
77 // Set NTP time button 77 // Set NTP time button
78 QPushButton *pb = new QPushButton( Resource::loadPixmap( "netsystemtime/ntptab" ), 78 m_ntpBtn = new QPushButton( Resource::loadPixmap( "netsystemtime/ntptab" ),
79 tr( "Get time from the network" ), container ); 79 tr( "Get time from the network" ), container );
80 connect( pb, SIGNAL(clicked()), this, SIGNAL(getNTPTime()) ); 80 connect( m_ntpBtn, SIGNAL(clicked()), this, SIGNAL(getNTPTime()) );
81 layout->addMultiCellWidget( pb, 4, 4, 0, 1 ); 81 layout->addMultiCellWidget( m_ntpBtn, 4, 4, 0, 1 );
82} 82}
83 83
84NTPTabWidget::~NTPTabWidget() 84NTPTabWidget::~NTPTabWidget()
85{ 85{
86} 86}
87 87
88void NTPTabWidget::setStartTime( const QString &str ) 88void NTPTabWidget::setStartTime( const QString &str )
89{ 89{
@@ -100,8 +100,13 @@ void NTPTabWidget::setNewTime( const QString &str )
100 lblNewTime->setText( str ); 100 lblNewTime->setText( str );
101} 101}
102 102
103void NTPTabWidget::addNtpOutput( const QString &str ) 103void NTPTabWidget::addNtpOutput( const QString &str )
104{ 104{
105 mleNtpOutput->append( str ); 105 mleNtpOutput->append( str );
106 mleNtpOutput->setCursorPosition( mleNtpOutput->numLines() + 1, 0, FALSE ); 106 mleNtpOutput->setCursorPosition( mleNtpOutput->numLines() + 1, 0, FALSE );
107} 107}
108
109void NTPTabWidget::setNTPBtnEnabled( bool enabled )
110{
111 m_ntpBtn->setEnabled( enabled );
112}
diff --git a/noncore/settings/netsystemtime/ntptabwidget.h b/noncore/settings/netsystemtime/ntptabwidget.h
index 811c57e..f05482e 100644
--- a/noncore/settings/netsystemtime/ntptabwidget.h
+++ b/noncore/settings/netsystemtime/ntptabwidget.h
@@ -1,60 +1,64 @@
1/* 1/*
2                This file is part of the OPIE Project 2 This file is part of the OPIE Project
3 =. 3 =.
4             .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?> 4 .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?>
5           .>+-= 5 .>+-=
6 _;:,     .>    :=|. This file is free software; you can 6_;:, .> :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under 7.> <`_, > . <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public 8:`=1 )Y*s>-.-- : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software 9.="- .-=="i, .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License, 10- . .-<_> .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version. 11 ._= =} : or (at your option) any later version.
12    .%`+i>       _;_. 12 .%`+i> _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that 13 .i_,=:_. -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 14 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of 15 : .. .:, . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 16 =_ + =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 17 _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details. 18..}^=.= = ; Public License for more details.
19++=   -.     .`     .: 19++= -. .` .:
20 :     =  ...= . :.=- You should have received a copy of the GNU 20: = ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file; 21-. .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the 22 -_. . . )=. = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc., 23 -- :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330, 24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#ifndef NTPTABWIDGET_H 29#ifndef NTPTABWIDGET_H
30#define NTPTABWIDGET_H 30#define NTPTABWIDGET_H
31 31
32#include <qwidget.h> 32#include <qwidget.h>
33 33
34class QLabel; 34class QLabel;
35class QMultiLineEdit; 35class QMultiLineEdit;
36class QPushButton;
36 37
37class NTPTabWidget : public QWidget 38class NTPTabWidget : public QWidget
38{ 39{
39 Q_OBJECT 40 Q_OBJECT
40 41
41public: 42public:
42 NTPTabWidget( QWidget * = 0x0 ); 43 NTPTabWidget( QWidget * = 0x0 );
43 ~NTPTabWidget(); 44 ~NTPTabWidget();
44 45
45 void setStartTime( const QString & ); 46 void setStartTime( const QString & );
46 void setTimeShift( const QString & ); 47 void setTimeShift( const QString & );
47 void setNewTime( const QString & ); 48 void setNewTime( const QString & );
48 void addNtpOutput( const QString & ); 49 void addNtpOutput( const QString & );
50 void setNTPBtnEnabled( bool enabled );
49 51
50private: 52private:
51 QLabel *lblStartTime; 53 QLabel *lblStartTime;
52 QLabel *lblTimeShift; 54 QLabel *lblTimeShift;
53 QLabel *lblNewTime; 55 QLabel *lblNewTime;
54 QMultiLineEdit *mleNtpOutput; 56 QMultiLineEdit *mleNtpOutput;
57 QPushButton *m_ntpBtn;
58
55 59
56signals: 60signals:
57 void getNTPTime(); 61 void getNTPTime();
58}; 62};
59 63
60#endif 64#endif
diff --git a/noncore/settings/netsystemtime/timetabwidget.cpp b/noncore/settings/netsystemtime/timetabwidget.cpp
index 3cc127d..905461f 100644
--- a/noncore/settings/netsystemtime/timetabwidget.cpp
+++ b/noncore/settings/netsystemtime/timetabwidget.cpp
@@ -1,31 +1,31 @@
1/* 1/*
2                This file is part of the OPIE Project 2 This file is part of the OPIE Project
3 =. 3 =.
4             .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?> 4 .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?>
5           .>+-= 5 .>+-=
6 _;:,     .>    :=|. This file is free software; you can 6_;:, .> :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under 7.> <`_, > . <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public 8:`=1 )Y*s>-.-- : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software 9.="- .-=="i, .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License, 10- . .-<_> .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version. 11 ._= =} : or (at your option) any later version.
12    .%`+i>       _;_. 12 .%`+i> _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that 13 .i_,=:_. -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 14 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of 15 : .. .:, . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 16 =_ + =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 17 _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details. 18..}^=.= = ; Public License for more details.
19++=   -.     .`     .: 19++= -. .` .:
20 :     =  ...= . :.=- You should have received a copy of the GNU 20: = ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file; 21-. .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the 22 -_. . . )=. = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc., 23 -- :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330, 24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#include "timetabwidget.h" 29#include "timetabwidget.h"
30 30
31#include <qpe/config.h> 31#include <qpe/config.h>
@@ -104,23 +104,23 @@ TimeTabWidget::TimeTabWidget( QWidget *parent )
104 selTimeZone = new TimeZoneSelector( container ); 104 selTimeZone = new TimeZoneSelector( container );
105 connect( selTimeZone, SIGNAL(signalNewTz(const QString&)), this, SLOT(slotTZChanged(const QString&)) ); 105 connect( selTimeZone, SIGNAL(signalNewTz(const QString&)), this, SLOT(slotTZChanged(const QString&)) );
106 layout->addMultiCellWidget( selTimeZone, 6, 6, 2, 5 ); 106 layout->addMultiCellWidget( selTimeZone, 6, 6, 2, 5 );
107 107
108 // Space filler 108 // Space filler
109 layout->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ), 7, 0 ); 109 layout->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ), 7, 0 );
110 110
111 // Set NTP time button 111 // Set NTP time button
112 QPushButton *pb = new QPushButton( Resource::loadPixmap( "netsystemtime/ntptab" ), 112 m_ntpBtn = new QPushButton( Resource::loadPixmap( "netsystemtime/ntptab" ),
113 tr( "Get time from the network" ), container ); 113 tr( "Get time from the network" ), container );
114 connect( pb, SIGNAL(clicked()), this, SIGNAL(getNTPTime()) ); 114 connect( m_ntpBtn, SIGNAL(clicked()), this, SIGNAL(getNTPTime()) );
115 layout->addMultiCellWidget( pb, 8, 8, 0, 5 ); 115 layout->addMultiCellWidget( m_ntpBtn, 8, 8, 0, 5 );
116 116
117 // Set predicted time button 117 // Set predicted time button
118 pb = new QPushButton( Resource::loadPixmap( "netsystemtime/predicttab" ), tr( "Set predicted time" ), 118 QPushButton *pb = new QPushButton( Resource::loadPixmap( "netsystemtime/predicttab" ), tr( "Set predicted time" ),
119 container ); 119 container );
120 connect( pb, SIGNAL(clicked()), this, SIGNAL(getPredictedTime()) ); 120 connect( pb, SIGNAL(clicked()), this, SIGNAL(getPredictedTime()) );
121 layout->addMultiCellWidget( pb, 9, 9, 0, 5 ); 121 layout->addMultiCellWidget( pb, 9, 9, 0, 5 );
122 122
123 // Space filler at bottom of widget 123 // Space filler at bottom of widget
124 layout->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ), 10, 0 ); 124 layout->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ), 10, 0 );
125 125
126 // Initialize values 126 // Initialize values
@@ -187,16 +187,21 @@ void TimeTabWidget::setDateTime( const QDateTime &dt )
187 sbHour->setValue( t.hour() ); 187 sbHour->setValue( t.hour() );
188 } 188 }
189 sbMin->setValue( t.minute() ); 189 sbMin->setValue( t.minute() );
190 190
191 // Set date 191 // Set date
192 btnDate->setDate( dt.date() ); 192 btnDate->setDate( dt.date() );
193} 193}
194 194
195void TimeTabWidget::setNTPBtnEnabled( bool enabled )
196{
197 m_ntpBtn->setEnabled( enabled );
198}
199
195void TimeTabWidget::setSystemTime( const QDateTime &dt ) 200void TimeTabWidget::setSystemTime( const QDateTime &dt )
196{ 201{
197 // Set system clock 202 // Set system clock
198 if ( dt.isValid() ) 203 if ( dt.isValid() )
199 { 204 {
200 struct timeval myTv; 205 struct timeval myTv;
201 int t = TimeConversion::toUTC( dt ); 206 int t = TimeConversion::toUTC( dt );
202 myTv.tv_sec = t; 207 myTv.tv_sec = t;
diff --git a/noncore/settings/netsystemtime/timetabwidget.h b/noncore/settings/netsystemtime/timetabwidget.h
index f44a1da..949535d 100644
--- a/noncore/settings/netsystemtime/timetabwidget.h
+++ b/noncore/settings/netsystemtime/timetabwidget.h
@@ -1,65 +1,68 @@
1/* 1/*
2                This file is part of the OPIE Project 2 This file is part of the OPIE Project
3 =. 3 =.
4             .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?> 4 .=l. Copyright (c) 2002 OPIE team <opie@handhelds.org?>
5           .>+-= 5 .>+-=
6 _;:,     .>    :=|. This file is free software; you can 6_;:, .> :=|. This file is free software; you can
7.> <`_,   >  .   <= redistribute it and/or modify it under 7.> <`_, > . <= redistribute it and/or modify it under
8:`=1 )Y*s>-.--   : the terms of the GNU General Public 8:`=1 )Y*s>-.-- : the terms of the GNU General Public
9.="- .-=="i,     .._ License as published by the Free Software 9.="- .-=="i, .._ License as published by the Free Software
10 - .   .-<_>     .<> Foundation; either version 2 of the License, 10- . .-<_> .<> Foundation; either version 2 of the License,
11     ._= =}       : or (at your option) any later version. 11 ._= =} : or (at your option) any later version.
12    .%`+i>       _;_. 12 .%`+i> _;_.
13    .i_,=:_.      -<s. This file is distributed in the hope that 13 .i_,=:_. -<s. This file is distributed in the hope that
14     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 14 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
15    : ..    .:,     . . . without even the implied warranty of 15 : .. .:, . . . without even the implied warranty of
16    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 16 =_ + =;=|` MERCHANTABILITY or FITNESS FOR A
17  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General 17 _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General
18..}^=.=       =       ; Public License for more details. 18..}^=.= = ; Public License for more details.
19++=   -.     .`     .: 19++= -. .` .:
20 :     =  ...= . :.=- You should have received a copy of the GNU 20: = ...= . :.=- You should have received a copy of the GNU
21 -.   .:....=;==+<; General Public License along with this file; 21-. .:....=;==+<; General Public License along with this file;
22  -_. . .   )=.  = see the file COPYING. If not, write to the 22 -_. . . )=. = see the file COPYING. If not, write to the
23    --        :-=` Free Software Foundation, Inc., 23 -- :-=` Free Software Foundation, Inc.,
24 59 Temple Place - Suite 330, 24 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#ifndef TIMETABWIDGET_H 29#ifndef TIMETABWIDGET_H
30#define TIMETABWIDGET_H 30#define TIMETABWIDGET_H
31 31
32#include <qwidget.h> 32#include <qwidget.h>
33 33
34class DateButton; 34class DateButton;
35class DateFormat; 35class DateFormat;
36class QComboBox; 36class QComboBox;
37class QDateTime; 37class QDateTime;
38class QPushButton;
38class QSpinBox; 39class QSpinBox;
39class TimeZoneSelector; 40class TimeZoneSelector;
40 41
41class TimeTabWidget : public QWidget 42class TimeTabWidget : public QWidget
42{ 43{
43 Q_OBJECT 44 Q_OBJECT
44 45
45public: 46public:
46 TimeTabWidget( QWidget * = 0x0 ); 47 TimeTabWidget( QWidget * = 0l );
47 ~TimeTabWidget(); 48 ~TimeTabWidget();
48 49
49 void saveSettings( bool ); 50 void saveSettings( bool );
50 void setDateTime( const QDateTime & ); 51 void setDateTime( const QDateTime & );
52 void setNTPBtnEnabled( bool enabled );
51 53
52private: 54private:
53 QSpinBox *sbHour; 55 QSpinBox *sbHour;
54 QSpinBox *sbMin; 56 QSpinBox *sbMin;
55 QComboBox *cbAmpm; 57 QComboBox *cbAmpm;
56 DateButton *btnDate; 58 DateButton *btnDate;
57 TimeZoneSelector *selTimeZone; 59 TimeZoneSelector *selTimeZone;
60 QPushButton *m_ntpBtn;
58 61
59 bool use12HourTime; 62 bool use12HourTime;
60 63
61 void setSystemTime( const QDateTime & ); 64 void setSystemTime( const QDateTime & );
62 65
63signals: 66signals:
64 void tzChanged( const QString & ); 67 void tzChanged( const QString & );
65 void getNTPTime(); 68 void getNTPTime();