29 #include <kmessagebox.h>
43 I18N_NOOP(
"Do not Care"), 0
46 {I18N_NOOP(
"30 Min"), 30*60},
47 {I18N_NOOP(
"1 Hour"), 1 * 60*60},
48 {I18N_NOOP(
"2 Hours"), 2 * 60*60},
49 {I18N_NOOP(
"4 Hours"), 4 * 60*60},
50 {I18N_NOOP(
"8 Hours"), 8 * 60*60},
51 {I18N_NOOP(
"12 Hours"), 12 * 60*60},
52 {I18N_NOOP(
"18 Hours"), 18 * 60*60},
54 {I18N_NOOP(
"1 Day"), 1 * 60*60*24},
55 {I18N_NOOP(
"2 Days"), 2 * 60*60*24},
56 {I18N_NOOP(
"3 Days"), 3 * 60*60*24},
57 {I18N_NOOP(
"4 Days"), 4 * 60*60*24},
58 {I18N_NOOP(
"5 Days"), 5 * 60*60*24},
59 {I18N_NOOP(
"6 Days"), 6 * 60*60*24},
61 {I18N_NOOP(
"1 Week"), 1 * 60*60*24*7},
62 {I18N_NOOP(
"2 Weeks"), 2 * 60*60*24*7},
63 {I18N_NOOP(
"3 Weeks"), 3 * 60*60*24*7},
64 {I18N_NOOP(
"4 Weeks"), 4 * 60*60*24*7},
66 {I18N_NOOP(
"1 Month"), 1 * 60*60*24*30},
67 {I18N_NOOP(
"2 Months"), 2 * 60*60*24*30},
68 {I18N_NOOP(
"3 Months"), 3 * 60*60*24*30},
69 {I18N_NOOP(
"4 Months"), 4 * 60*60*24*30},
70 {I18N_NOOP(
"5 Months"), 5 * 60*60*24*30},
71 {I18N_NOOP(
"6 Months"), 6 * 60*60*24*30},
72 {I18N_NOOP(
"10 Months"), 10 * 60*60*24*30},
73 {I18N_NOOP(
"12 Months"), 12 * 60*60*24*30},
96 connect(kcfg_Block, SIGNAL(toggled(
bool)),
this, SLOT(
slotBlockToggled(
bool)));
103 void BlockOptions::fillWidgets()
105 fillComboBox(block1);
106 fillComboBox(block2);
107 fillComboBox(block3);
108 fillComboBox(block4);
109 fillComboBox(block5);
110 fillComboBox(block6);
111 fillComboBox(block7);
113 m_blockComboList.append(block1);
114 m_blockComboList.append(block2);
115 m_blockComboList.append(block3);
116 m_blockComboList.append(block4);
117 m_blockComboList.append(block5);
118 m_blockComboList.append(block6);
119 m_blockComboList.append(block7);
121 fillComboBox(expire1);
122 fillComboBox(expire2);
123 fillComboBox(expire3);
124 fillComboBox(expire4);
125 fillComboBox(expire5);
126 fillComboBox(expire6);
127 fillComboBox(expire7);
129 m_expireComboList.append(expire1);
130 m_expireComboList.append(expire2);
131 m_expireComboList.append(expire3);
132 m_expireComboList.append(expire4);
133 m_expireComboList.append(expire5);
134 m_expireComboList.append(expire6);
135 m_expireComboList.append(expire7);
157 kcfg_Block->setChecked(block);
158 block1->setEnabled(block);
159 block2->setEnabled(block);
160 block3->setEnabled(block);
161 block4->setEnabled(block);
162 block5->setEnabled(block);
163 block6->setEnabled(block);
164 block7->setEnabled(block);
167 kcfg_Expire->setChecked(expire);
168 expire1->setEnabled(expire);
169 expire2->setEnabled(expire);
170 expire3->setEnabled(expire);
171 expire4->setEnabled(expire);
172 expire5->setEnabled(expire);
173 expire6->setEnabled(expire);
174 expire7->setEnabled(expire);
177 void BlockOptions::fillComboBox(KComboBox * cb)
182 while (ref->text != 0) {
183 cb->addItem(i18n(ref->text));
188 void BlockOptions::updateComboBox(
int value, KComboBox * cb)
193 while (ref->text != 0) {
194 if (value == ref->num)
198 cb->setCurrentIndex(index);
203 block1->setEnabled(state);
204 block2->setEnabled(state);
205 block3->setEnabled(state);
206 block4->setEnabled(state);
207 block5->setEnabled(state);
208 block6->setEnabled(state);
209 block7->setEnabled(state);
214 expire1->setEnabled(state);
215 expire2->setEnabled(state);
216 expire3->setEnabled(state);
217 expire4->setEnabled(state);
218 expire5->setEnabled(state);
219 expire6->setEnabled(state);
220 expire7->setEnabled(state);
230 void BlockOptions::checkValidity()
234 for (
int i = 1; i <= 6; i++) {
235 if (kcfg_Block->isChecked()) {
239 if (date_itemlist[m_blockComboList[i - 1]->currentIndex()].num != 0 &&
240 date_itemlist[m_blockComboList[i]->currentIndex()].num != 0 &&
241 date_itemlist[m_blockComboList[i - 1]->currentIndex()].num >= date_itemlist[m_blockComboList[i]->currentIndex()].num) {
244 message.append(i18n(
"Illogical blocking times.\n"));
246 message.append(i18n(
"The time for level %1 should be lower than the time for level %2.\n", i, i + 1));
251 for (
int i = 1; i <= 6; i++) {
253 if (kcfg_Expire->isChecked()) {
254 if (date_itemlist[m_expireComboList[i - 1]->currentIndex()].num != 0 &&
255 date_itemlist[m_expireComboList[i]->currentIndex()].num != 0 &&
256 date_itemlist[m_expireComboList[i - 1]->currentIndex()].num >=
257 date_itemlist[m_expireComboList[i]->currentIndex()].num) {
260 message.append(i18n(
"\nIllogical expiration times.\n"));
262 message.append(i18n(
"The time for level %1 should be lower than the time for level %2.\n", i, i + 1));
267 if (message.length() == 0) {
269 for (
int i = 0; i <= 6; i++) {
270 if (kcfg_Block->isChecked() &&
271 kcfg_Expire->isChecked() &&
272 m_expireComboList[i]->currentIndex() >= 0 &&
273 m_blockComboList[i]->currentIndex() >= 0 &&
274 date_itemlist[m_expireComboList[i]->currentIndex()].num != 0 &&
275 date_itemlist[m_blockComboList[i]->currentIndex()].num != 0 &&
276 date_itemlist[m_blockComboList[i]->currentIndex()].num >= date_itemlist[m_expireComboList[i]->currentIndex()].num) {
279 message.append(i18n(
"\nIllogical blocking vs. expiration times.\n"));
281 message.append(i18n(
"The blocking time at level %1 should be lower than the expiration time.\n", i + 1));
286 if (message.length() != 0)
287 KMessageBox::sorry(
this, message, i18n(
"Illogical Values"));
293 if (block7->currentIndex() < 0 ||
294 block6->currentIndex() < 0 ||
295 block5->currentIndex() < 0 ||
296 block4->currentIndex() < 0 ||
297 block3->currentIndex() < 0 ||
298 block2->currentIndex() < 0 ||
299 block1->currentIndex() < 0 ||
300 expire7->currentIndex() < 0 ||
301 expire6->currentIndex() < 0 ||
302 expire5->currentIndex() < 0 ||
303 expire4->currentIndex() < 0 ||
304 expire3->currentIndex() < 0 ||
305 expire2->currentIndex() < 0 ||
306 expire1->currentIndex() < 0)
309 return date_itemlist[block7->currentIndex()].num == 5184000 &&
310 date_itemlist[block6->currentIndex()].num == 2592000 &&
311 date_itemlist[block5->currentIndex()].num == 1209600 &&
312 date_itemlist[block4->currentIndex()].num == 604800 &&
313 date_itemlist[block3->currentIndex()].num == 345600 &&
314 date_itemlist[block2->currentIndex()].num == 172800 &&
315 date_itemlist[block1->currentIndex()].num == 86400 &&
316 date_itemlist[expire7->currentIndex()].num == 10368000 &&
317 date_itemlist[expire6->currentIndex()].num == 5184000 &&
318 date_itemlist[expire5->currentIndex()].num == 2592000 &&
319 date_itemlist[expire4->currentIndex()].num == 1209600 &&
320 date_itemlist[expire3->currentIndex()].num == 604800 &&
321 date_itemlist[expire2->currentIndex()].num == 345600 &&
322 date_itemlist[expire1->currentIndex()].num == 172800;
328 if (block7->currentIndex() < 0 ||
329 block6->currentIndex() < 0 ||
330 block5->currentIndex() < 0 ||
331 block4->currentIndex() < 0 ||
332 block3->currentIndex() < 0 ||
333 block2->currentIndex() < 0 ||
334 block1->currentIndex() < 0 ||
335 expire7->currentIndex() < 0 ||
336 expire6->currentIndex() < 0 ||
337 expire5->currentIndex() < 0 ||
338 expire4->currentIndex() < 0 ||
339 expire3->currentIndex() < 0 ||
340 expire2->currentIndex() < 0 ||
341 expire1->currentIndex() < 0)
363 if (block7->currentIndex() < 0 ||
364 block6->currentIndex() < 0 ||
365 block5->currentIndex() < 0 ||
366 block4->currentIndex() < 0 ||
367 block3->currentIndex() < 0 ||
368 block2->currentIndex() < 0 ||
369 block1->currentIndex() < 0 ||
370 expire7->currentIndex() < 0 ||
371 expire6->currentIndex() < 0 ||
372 expire5->currentIndex() < 0 ||
373 expire4->currentIndex() < 0 ||
374 expire3->currentIndex() < 0 ||
375 expire2->currentIndex() < 0 ||
376 expire1->currentIndex() < 0)
379 return date_itemlist[block7->currentIndex()].num !=
Prefs::blockItem(KV_LEV7_GRADE) ||
380 date_itemlist[block6->currentIndex()].num !=
Prefs::blockItem(KV_LEV6_GRADE) ||
381 date_itemlist[block5->currentIndex()].num !=
Prefs::blockItem(KV_LEV5_GRADE) ||
382 date_itemlist[block4->currentIndex()].num !=
Prefs::blockItem(KV_LEV4_GRADE) ||
383 date_itemlist[block3->currentIndex()].num !=
Prefs::blockItem(KV_LEV3_GRADE) ||
384 date_itemlist[block2->currentIndex()].num !=
Prefs::blockItem(KV_LEV2_GRADE) ||
385 date_itemlist[block1->currentIndex()].num !=
Prefs::blockItem(KV_LEV1_GRADE) ||
386 date_itemlist[expire7->currentIndex()].num !=
Prefs::expireItem(KV_LEV7_GRADE) ||
387 date_itemlist[expire6->currentIndex()].num !=
Prefs::expireItem(KV_LEV6_GRADE) ||
388 date_itemlist[expire5->currentIndex()].num !=
Prefs::expireItem(KV_LEV5_GRADE) ||
389 date_itemlist[expire4->currentIndex()].num !=
Prefs::expireItem(KV_LEV4_GRADE) ||
390 date_itemlist[expire3->currentIndex()].num !=
Prefs::expireItem(KV_LEV3_GRADE) ||
391 date_itemlist[expire2->currentIndex()].num !=
Prefs::expireItem(KV_LEV2_GRADE) ||
395 #include "blockoptions.moc"
static void setExpireItem(int i, int v)
Set Amount of time after which different grades should expire.
static int expireItem(int i)
Get Amount of time after which different grades should expire.
BlockOptions(QWidget *parent=0)
void slotComboBoxActivated(int)
static int blockItem(int i)
Get Amount of time different grades should be blocked.
static void setBlockItem(int i, int v)
Set Amount of time different grades should be blocked.
void slotBlockToggled(bool)
static ListRef date_itemlist[]
static bool expire()
Get In Blocking Query Tab Dialog, if checked then the Query accepts an expiring time.
static bool block()
Get In Blocking Query Tab Dialog, if checked then the Query is blocked.
void slotExpireToggled(bool)