1#include "timedateformatwidget.h"
2#include "TimeFormatWidget.h"
3#include "TimeFormatWidget.moc"
8#include <tqbuttongroup.h>
9#include <tqradiobutton.h>
13#include <tqlineedit.h>
15#include <KoVariable.h>
21TimeFormatWidget::TimeFormatWidget( TQWidget* parent,
const char* name, WFlags fl )
22 : TimeDateFormatWidgetPrototype( parent,
name, fl )
24 setCaption( i18n(
"TimeFormat",
"This Dialog Allows You to Set the Format of the Time Variable" ) );
26 TQStringList listTimeFormat = KoVariableTimeFormat::staticTranslatedFormatPropsList();
27 combo1->insertStringList(listTimeFormat);
29 combo2->insertItem( i18n(
"Hour" ) );
30 combo2->insertItem( i18n(
"Hour (2 digits)" ) );
31 combo2->insertItem( i18n(
"Minute" ) );
32 combo2->insertItem( i18n(
"Minute (2 digits)" ) );
33 combo2->insertItem( i18n(
"Second" ) );
34 combo2->insertItem( i18n(
"Second (2 digits)" ) );
35 combo2->insertItem( i18n(
"Millisecond (3 digits)" ) );
36 combo2->insertItem( i18n(
"am/pm" ) );
37 combo2->insertItem( i18n(
"AM/PM" ) );
38 combo2->setCurrentItem( 0 );
40 label_correction->setText(i18n(
"Correct in Minutes"));
41 connect( CheckBox1, TQ_SIGNAL(toggled (
bool )),
this,TQ_SLOT(slotPersonalizeChanged(
bool)));
42 connect( combo1, TQ_SIGNAL(activated (
const TQString & )),
this, TQ_SLOT(slotDefaultValueChanged(
const TQString &)));
43 connect( combo1, TQ_SIGNAL(textChanged (
const TQString & )),
this, TQ_SLOT(slotDefaultValueChanged(
const TQString &)));
44 connect( KIntNumInput1, TQ_SIGNAL(valueChanged(
int)),
this, TQ_SLOT( slotOffsetChanged(
int)));
45 slotPersonalizeChanged(
false);
51TimeFormatWidget::~TimeFormatWidget()
59void TimeFormatWidget::slotDefaultValueChanged(
const TQString & )
64void TimeFormatWidget::slotOffsetChanged(
int)
69void TimeFormatWidget::slotPersonalizeChanged(
bool b)
71 combo2->setEnabled(b);
72 combo1->setEditable(b);
73 TextLabel1->setEnabled(b);
78void TimeFormatWidget::comboActivated()
80 TQString
string=combo2->currentText();
81 if(
string==i18n(
"Hour"))
82 combo1->lineEdit()->insert(
"h");
83 else if(
string==i18n(
"Hour (2 digits)"))
84 combo1->lineEdit()->insert(
"hh");
85 else if(
string==i18n(
"Minute"))
86 combo1->lineEdit()->insert(
"m");
87 else if(
string==i18n(
"Minute (2 digits)"))
88 combo1->lineEdit()->insert(
"mm");
89 else if(
string==i18n(
"Second"))
90 combo1->lineEdit()->insert(
"s");
91 else if(
string==i18n(
"Second (2 digits)"))
92 combo1->lineEdit()->insert(
"ss");
93 else if(
string==i18n(
"Millisecond (3 digits)"))
94 combo1->lineEdit()->insert(
"zzz");
95 else if(
string==i18n(
"AM/PM"))
96 combo1->lineEdit()->insert(
"AP");
97 else if(
string==i18n(
"am/pm"))
98 combo1->lineEdit()->insert(
"ap");
106void TimeFormatWidget::updateLabel()
111 TQTime ct = TQTime::currentTime().addSecs(correctValue());
112 label->setText( format.
convert( ct ) );
115TQString TimeFormatWidget::resultString()
117 const TQString lookup(combo1->currentText());
118 const TQStringList listTranslated( KoVariableTimeFormat::staticTranslatedFormatPropsList() );
119 const int index = listTranslated.findIndex(lookup);
126 const TQStringList listRaw( KoVariableTimeFormat::staticFormatPropsList() );
128 TQStringList::ConstIterator it( listRaw.at(index) );
129 Q_ASSERT( it != listRaw.end() );
130 if ( it != listRaw.end() )
132 kdError(32500) <<
"Internal error: could not find correcponding time format: " << lookup << endl;
136int TimeFormatWidget::correctValue()
138 return KIntNumInput1->value()*60;
const char * name(StdAction id)